We have used Symantec.Cloud/MessageLabs for our email filtering for several years now and it works very well. We have recently migrated to Exchange, but when we started with Message Labs, we were using Sun Messaging Server.
It doesn't catch everything, but it definitely catches the vast majority of it. You just route all of your incoming mail through their servers and that's that. If you choose, you can also use their 'address registration' service, which basically prevents any mail from being delivered to your server for an email address that hasn't been 'registered' with them.