Sgt_Kickaxe - 10:22 am on May 17, 2010 (gmt 0)
The best anti-spam protection comes from not being the same as every other site running the same software.
Add one text box that says "enter the 4th letter of this domain name here" and another textbox with a hidden attribute that automatically bans anything/anyone who adds anything in the box while registering. Those two combined will block most bots though it will fail if the bot is monitored by a human.
The exact code will vary by software type, you didn't mention what you're running.