Western Union had, hands-down, the best rates and the least hassle for me sending money to my home country. The old reputation of WU just doesn't hold ground any more.
Their fees are surprisingly competitive, take another look. In places where fees are high it usually has to do with risks of doing business in the locale that they have to price in.