T-Mobile simply doesn't have any data coverage outside of major metropolitan areas. If you're someone that travels outside these areas, you will be unable to use your devices for anything but calls and texts.
That's a big caveat that should be mentioned.
(If you never leave the Bay Area, for example, then T-Mobile is a logical choice. It works well for me 98% of the time here.)
Yes, there is free UMTS/HSPA/EDGE roaming on AT&T for post-paid plans (aka not the $30 100 minute/5gb plan) and there is a data limit. For my plan, its 50 megabytes, which doesn't seem like much, but AT&T throttles you to 128kbit/s, so you really have to work hard to get to that 50 megs.
That's a big caveat that should be mentioned.
(If you never leave the Bay Area, for example, then T-Mobile is a logical choice. It works well for me 98% of the time here.)