Ironically on Woltlab, you have to move posts to the trash in order to delete them so I kind of do both lol. But I would rather immediately delete them since it looks bad if you keep spam posts for everyone to read them.
I rarely get spam on any of the forums I'm involved with but when I do they get moved to trash. This is primarily for audit purposes, a requirement from the forum owner. It's also occasionally useful for tracking rogue members.
I used to archive everything in the old days, because I was a little paranoid about deleting "content," but I haven't done that in years, thankfully. Now spam just gets deleted. It's worthless, it's better off in cyber oblivion.
Depending on the content of the topic. If it's pornography or some copyright violation, than I delete it. If it's a spam topic, just lock and move to garbage.
Usually, I would just move it to the archive. Nothing ever really got too wild to the point where I would need to outright delete things, and in the case where something like that was done, I would just delete.