I've used Sprint, AT&T and T-Mobile - as well as several European carriers. Personally, I'm a big fan of Vodafone when I travel.

But if we are just talking US carriers, then of the three that I've used, my favorite by far is T-Mobile.
I had a bunch of billing problems with AT&T four years ago - and I gave up on them. My recollection of my experience with them is that I'm still a bit annoyed with them. They double-charged, said the billing things were fixed and then hit me with late fees when I paid the "fixed bill". This happened twice and I spent literally hours on the phone with them. I loved their coverage - I had good coverage everywhere - but I thought their billing department was incompetent and their customer service was horrible in that they'd say things that weren't true and they were often unhelpful.
Sprint's customer service's initial voice recognition system drove my wife crazy because it never understood her British accent. She hated calling Sprint - because "virtual assistant Sally" could never understand a thing she said and she never figured out the direct method through to customer service. After my wife spent 20 minutes going in circles with their voice recognition system, she said "we are switching". I will say that Sprint was really cool about cancelling - once my wife demonstrated the problem using a speaker phone in the Sprint store and the staff in the store stopped snickering, they let us out of the contract with no termination fees. Nice as they were, though, we also had coverage problems with Sprint - we had no service at our house.
T-Mobile has been wonderful to deal with. Their customer service is great and we've never had any billing issues or anything else. They are helpful, waits are short and everything has always been cheerfully resolved to my satisfaction. But when I travel, T-Mobile coverage has been a problem. They have great coverage where I am, but once I leave northern Colorado, the coverage never seems very good.