Captcha, reCapthca and the like have serious usability issues. And basically anything that requires a user to fill an extra field (other than the comment) each time the user posts a comment, is considered bad usability.
(NOTE: I hope you do realize that users need only enter their name and email address once when it comments on a website, unless he clears the cache.)
(AntiSpamBee, Defensio, and TypePad AntiSpam, among others, are aimed to be Akismet alternatives. While many don't like Akismet because it's from a company that believes in open source, but isn't free, many of us still acknowledge that it's next to none.)
What else should I do? (rather, should I be doing something else that's more effective?)
Has anyone tried ZigTrap? How does it compare to others? (Too many false positives is a moderation/spam queue overhead.)
PS: I am sure that there's no "best for all" solution. But it will help if you can share what works best for you.
TLDR: How do I prevent spam on WordPress comments without requiring manual approval or user login/registration?