I paid £709 for the 64GB iPhone 5s. Then got a sim only one month rolling contract with 3 for £18/mth which gives me unlimited calls, texts and data (including tethering). That equates to £1141 over 2 years. The equivalent 24 month contract with 3 today would cost £29 for the 5s plus £54/mth which comes to a total of £1325 over the 2 years. So I'm saving £184.
But that's not why I did it. Mobile providers are bringing out new plans all the time and I like the flexibility to switch as and when if I want according to who is giving the best deal, the best service, the best coverage where I live, etc. For example I was using Orange because they had 4G first. But now I've switched to 3 because they also have 4G now but it's much cheaper and you get unlimited data.
However I suspect that most people don't have the £700 to put down upfront so for them paying for it over a 2 year contract is a better option. I've no objection to contracts, I just think that 2 years is a long time to tie yourself down in a rapidly changing market. For example, in July roaming charges are being abolished inside the EU. So what a call costs you to make in the UK will cost the same if you make that call from say France or Germany. I wonder how many people are tied into expensive contracts with free calls abroad.