Tmobile vs Sprint vs Metropcs?

I'm currently with AT&T and about to get a smartphone. However the idea of limited data on a smartphone doesn't sound appealing and the prices are ridiculous for limited data.

Between T-mobile, Sprint, and MetroPCS, which is the best carrier for someone in Washington state? I want to get unlimited data so I can actually use the internet and other services without worrying about usage. Also, should I bring over an unlocked phone or just get one from them? I believe the S3 is offered in T-mobile and Metro and Sprint has the iPhone.

Added (1). EDIT: Meant to say that the best phone on T-mobile/Metro is the galaxy s3. While Sprint has the iPhone.

MetroPCS doesn't have the iphone. You should either get T-mobile or Sprint, because they have (or will have in sprint's case) a larger 3g network. For now, T-mobile has the best 3g network.