I use Stopforumspam.com as mentioned above, I also identify ranges of webhosting companies and block the whole range using htaccess, as most of the spam comes from bots and not live users. An example is 88.198.0.0 to 88.198.255.255 which is assigned to Hetzner that covers 65536 possible spammers (including one or more bots that were hammering one of my sites) and 0 live users.
I used to own a large sports forum years ago. I used several IP blocking methods. Stop forum spam works well. so does GlowHost Spam-O-Matic if your running VB. You want to be careful when blocking IP's, a lot of bot owners discard their IPs regularly so be sure to use regularly updated lists.