What do you like best?
It's both easy to configure and to use. A first timer would be able to easily configure it as its interface is just so intuitive. Dealing with the entrails of XMPP which are XML flavoured messages isn't the easiest task, but from the server point of view, when using Openfire everything becomes a bliss!
What do you dislike?
Sometimes when the API on the development side gets outdated, or Openfire is telling us to update its interface and we do perform some update, it's common to get a bunch of incompatibilities afterwards. They should strive to keep at least some backwards compatibility so we don't need to get back to our coding every single time we update the API or the server. Most of the times it's not a big deal though.
Recommendations to others considering the product
If you have been going through all the ordeal of dealing with XMPP vast protocol, without much success of understanding really what is going on at the server side of your application. Perhaps it's time to take a look at Openfire solution. It's easy to install, configure and integrate. Administrative tasks such as users creation, roles definition is easy as pie. Publish-subscribe handshakes on the server side isn't the easiest thing in the world, with openfire it's abstracted with a great and intuitive GUI. Go ahead and give it a try!
What business problems are you solving with the product? What benefits have you realized?
I have these applications which envolve a lot of real time features and the need of prompt response in communication between machine to machine. A small latency would be just too much, so simple http was completely out of the question. As I came to know about XMPP protocol a few years ago, it was both a relieve just being able to deal with such a wonderful protocol, but it was a pain having to deal with unintuitive server side technologies. Openfire really came to rescue on this.