I know I'll get flak for this but Google Apps should really be on the shortlist. By the time you get serious about backups, DR, 25GB storage limits, security, spam, and uptime, you'll be spending way more than the cost of Google Apps for 'free' software and that's not even including your time.
It's good that Zimbra exists in the world and there are definitely use cases for it, but definitely consider Google Apps before going down the road of hosting your own mail server.
If you really just can't stand Google, look at these:
Hosting a mail server infrastructure with fewer than 10s of thousands of users just seems like a waste of resources IMHO - you're not getting the economies of scale and quality of service that hosted providers offer.