I'll start out by saying I'm a tad biased, as I've been working on a plugin for Openfire for some time now and have had a lot of great interactions with them. That said, I've looked into just about every XMPP server I've seem come around in my day. I've posted a couple of reviews of all of the servers as well. Openfire has always had the best administrative interface IMO, and I've found the code very easy to follow, makes sense, and has great well documented code that's available online. I still think ejabberd beats openfire in sheer speed, but java 6 helped with that a lot. Generally I mostly appreciate the friendly nature of the developers and helpfulness in the forums from them and misc other folk. The plugin architecture is -very- powerful and generally if there's a way for the architecture to be improved, the devs are receptive to improving it.
So far the only other server that I haven't tried is Tigase. Aiming to give that a shot in the near future.
Great work folk!
Wildfire is a lovely looking jabber server but is actually a trap. The code is completely unmanageable. You Wildfire already has all the features for you is good to use it, if not modifying it is a complete waste of time.
After i've spent about a month and a half trying to do my job, i've ended up using tigase server, which doesn't look that well but it does the job.