You might want to consider KeyCaptcha. It is a captcha that require you to solve a puzzle and it is more effective than the conventional captcha system.
I have always used reCAPTCHA as this is pretty easy to setup and as it is a third party mod, changes are being made constantly to fight bots. This makes running a website that little bit easier as you do not have to focus on fighting bots as much. Using reCAPTCHA along with other tools such as StopForumSpam seems to work pretty well for me. I do however get a few bots that get through, I have no idea how lol
from personal experience I would recommend google recaptcha although its the only one I have used, Im sure there are some other good options mentioned above as well.