I've had some good success with a number of products.
The best success I've had overall is with MxLogic. Basically, you point your MX records to them, they handle all of the dirty laundry, and then deliver the mail to your server. You then set your firewall to only accept SMTP traffic from their IPs. The service is not free, it ranges from about $1 to $2.50 per user per month. There's a variety of misc. benefits though, like they will hold/spool your email should your server go down or be unavailable - that to me is almost worth the cost of the service alone. But when it comes to spam, they have as good protection as I've ever seen, lots of customization options, easy to use. I always look to them first.
I've used a number of the 'integrated' SPAM filtering solutions that are built into firewalls (Watchguard, Sonicwall) and they're usually pretty good. They dont always have a terribly detailed set of options of configuration though. They're usually all or nothing, and sometimes only tag the message, you you have to set up a filter in outlook.
Finally, I've had good success with Google Apps (Gmail for your domain). I've personally noticed Gmail's spam filtering is excellent. With Google apps (which is free), you dont have to use the web interface. You can set up POP or IMAP and be done with it. Considering the infrastructure behind it, and that it's free, it's a good option. If all you use it for is spam filtering, it still is worthwhile, IMO.