The Antispam Bee plugin has become my favorite free anti-spam plugin for WordPress. I’ve used it for a few months, and it works much better than my previous recommendation, Defensio Anti-Spam. I’ve only had a couple spam messages get past Antispam Bee, and I don’t remember getting any false positives. It integrates right into the default commenting system in WordPress.
Why not use Akismet? It’s excellent and free for personal sites, but according to the Akismet signup page, “If your site is for a business or if it promotes a product or service, you should pick from one of our paid account options.” So, most businesses and nonprofits need to pay for Akismet.
To prevent spam from cluttering your database, turn on automatic spam deletion in Antispam Bee: click Settings > Antispam Bee, and on the Advanced tab, check the box Spam will be automatically deleted after. I set it to 30 days. You can optionally display statistics and a spam counter on your dashboard; just check the boxes on the General tab.