I don't know what the contract and data situation is in the UK, but in the US, T-Mobile is VASTLY cheaper than AT&T for the same service. When I was on T-Mobile I had 300 anytime, unlimited weekends and M2M, with unlimited data (meaning unlimited bandwidth, although limited to web and email, but tethering was actually allowed!) and 100 SMS, for about US$40 (after taxes). This was the lowest service level with unlimited data, and was more than sufficient for my needs.
Eventually I got the odd notion that I "needed" an iPhone and so I switched to that. Now my bill is nearly doubled (about $70 after fees and taxes), and while the actual numbers for the service I get have gone up (450 anytime + rollover, unlimited nights + weekends), and the data service is now theoretically not restricted to what ports I can use (although for all practical purposes it is unless I jailbreak my phone), I was hardly coming even close to my previous plan limits, and while my iPhone certainly is a better web browsing and music-listening device, if I had just unlocked it I could have done all this for half the monthly price.
One thing to note, by the way, is that in the US, T-Mobile doesn't provide any sort of PAYG data (except on the Sidekick), unlike AT&T which has a wide variety of overpriced PAYG data products (and in order to use the only economical ones you have to have a monthly minute plan which is for all intents and purposes even MORE expensive than their contract fees).
Basically, cellphone service pricing in the US is completely out of whack.