Honestly, it depends ENTIRELY on where you live. No matter how much you like a provider or are recommended to one, it won't change not being able to get a reception in your house, so your location makes a huge difference if you're in the sticks.
If I had to make a judgement call, I'd say T-Mobile or Sprint. As far as the retention plans go, that can be hit or miss. If you tell them you want to break your contract, you might not get anything and you might get it commented on your record that you already mentioned it, which will make you look bad if you call back to try and get it. Trust me, I worked a second job at a Sprint call center once
If you've been a customer for over a year, they'll probably give you a retention plan. Sprint does offer a lot with their PCS vision, and their phones are way nice, but their plans are spendy if you ask me.
I'm with T-Mobile, and I love them to death. I've been tempted to get authorized to sell their phones through my friend's shop because I've converted a few people to them by my recommendation.
Top notch customer service, great plans ($39.99 for 600 AT, Unlimited N&W, No roaming, can't beat that), cool phones (the Samsung E715, Motorola V300, and Nokia 3650 all bring plenty to the table, and they're dirt cheap after rebates), stellar sound clarity, and very very rare call dropping. My only complaint is their GPRS internet service is a little lackluster, especially compared to Sprint's. Other than that, you can't lose with T-Mobile.