T-Mobile in particular has a sweet iPhone 3GS deal at the moment, valid till July 31. You can grab an iPhone 3GS for free on a 24-month contract, at £25.54PM.
By default the tariff includes a modest 100 minutes and 100 texts, but you can choose one from the range of free boosters, including Unlimited texts, Unlimited Landline Talk and USA & Canada Talk.
Only the 8GB model is available at the moment, though T-Mobile reckons the 16GB model is “coming soon”.
The iPhone 3GS has 3.5in display, 600 MHz processor and 3MP camera. Oh, and it'll be compatible with iOS 5 too. Sweet. (full specs)