I used to be sold on XML::Simple for most XML needs, but as planetscape pointed out to me not too long ago, XML::Twig will handle some XML data that XML::Simple simply chokes on.
As I dug a little deeper into XML::Twig I found that it still has a simple mode that one can use, similar to XML::Simple's XMLin() method. In fact, it tries to closely emulate the behavior of XML::Simple when operating in simple mode. But in addition to the simple things, it can do so much more too.
So I've begun re-implementing some of my existing tools using XML::Twig instead, and it gets my recommendation.