I got a Nexus One because the idea of a device that imposes restrictions against the user on the behalf of the manufacturer or carrier is deeply offensive.
It's possible to root most other high-end Android phones in order to install something like Cyanogen, but you're fighting against the current in those cases. If the exploit used to root it gets "fixed", then you might have trouble in the future. Plus you're supporting a fundamentally broken model.
I have a N1 and I am happy with it. Even though some newer Androids are perhaps slightly nicer in terms of hardware, I would also still recommend the N1 for the same reasons - I hate it when vendors impose their silly UI candy on me and in turn prevent me from getting timely updates.
The best thing about T-Mobile is going to a big tech conference where AT&T's network is floundering and getting a great signal to rub in the iPhone users' faces.
On a more serious note, I've only used it in SF and Seattle, but it's great there. I only pay $40/mo for unlimited data. (No minutes since I use VoIP.)
I don't know about other carriers, but T-mobile actually makes it pretty obvious. T-mobile seems a lot less consumer-hostile regarding these kinds of things than either AT&T or Verizon in my experience.
Unlimited data (with messaging) on my Droid for $55/mo. Reps might have to dig into their system for it, but it's there. Pretty good deal, esp on Verizon.
It's possible to root most other high-end Android phones in order to install something like Cyanogen, but you're fighting against the current in those cases. If the exploit used to root it gets "fixed", then you might have trouble in the future. Plus you're supporting a fundamentally broken model.
tldr: software freedom is kind of a big deal.