I have used the T-Mobile GPRS service in Stony Point, NY, Albany, NY, Philly, PA, Las Vegas, NV, and Anaheim, CA. I was always able to get signal and keep a connection alive for hours. Not a single problem here. I will probably setup an HTTP tunnel at my house at some point to get around the closed ports.
I've used it all over the U.S., and had mostly positive results. In general, if WAP works, then GPRS data works as well. The two most common failure modes that I've observed are T-Mobile's DNS servers going down (seems to happen far more than it should) and data traffic simply stalling out. I use IMAP over SSL and HTTPS all the time, and they work quite well, as does outgoing SMTP over SSL on port 25. No problems there. The only major port that I want to use and have found to be filtered is port 22 (SSH). One of these days, I'll get off my duff and run SSH on port 80. The horror.
Of course, as Rob has pointed out, it's hard to beat "free".
(On a side note, Marriott's in-room Internet service filters outgoing port 25 but allows just about everything else. I got our sysadms to run a port-redirector for me on port 2525 so I can work around Marriott's stupidity.)