Networks squeezing money any way they can
At the dawn of the networks a 12 month contract was a long time but slowly 18 month contracts appeared and became the normal deal for a somewhat decent allowance with phone. Now they're slowly pushing that up to 24 months and it's not on. Phones may be more advanced at the top end of the market but the price of them is still around the same. A high end Nokia four or five years back was around £350~ and that's the same for an unbranded HTC Desire today. How, then, do they justify the increased prices?
For a good example look at T-Mobile. They currently offer the HTC Desire on an 18 month contract at £30 a month with an up front cost of £340 (I think) for the phone. Move that to 24 months and the same deal nets the phone for £60. Why would anyone in their right mind pay £340 AND tie themselves into a contract when the SIM free phone costs barely £20 more? Of course if you don't know any better you look at the 24 month deal and go "WOW!" then opt for that. Artificially inflating prices to make other deals look good is a really low tactic. Mobile networks have milked customers for years with minutes that a lot of people don't use and now they want more? SIM only deal for me at contract renewal time I think, complete with SIM free phone.