I have tried various spam filters for my email, but the best I have used is in fact the one that comes with Outlook 2003. However it was always a bit of a pain that this happens in the Outlook client rather than the server. But that has just changed. Microsoft have released the free Intelligent Message Filter for Exchange 2003 (http://www.microsoft.com/exchange/downloads/2003/imf/default.asp). You install it on the server then configure it with two levels of filtering. The first is to configure a level of spam confidence, above which you want to archive or delete messages directly on the server. You then configure a second spam confidence level at which the Outlook 2003 client will treat the mail as spam. I currently run the first level at 6 and the second at 3, and this seems to be a nice balance for me. 90% of spam is caught on the server, and the rest ends up in my junk mail folder in Outlook- with few errors.
To help you fine tune your settings there are a couple of useful tips I have found: