+1
I think the OP needs to realize the carrier can play a major role in the decision. People who sign 2-year contract are not only being tied to the phone, but the service.
My stepdad got the original and 3G iPhone back in 2008. First time he made the switch to AT&T after being a long time customer to Verizon. Loved iPhone, hated AT&T. While Verizon sounded like a landline, AT&T would drop his calls every single day. He lives in the hills out in Yorba Linda. AT&T is crappy in that area. He went back to Verizon after eight months with AT&T and never looked back. He is in real estate and has to deal with clients, so reception and coverage is very important to him. It's not a game and he's not buying an iPhone because it makes a great toy for downtime. He went to the badly reviewed BB Storm which still acted like a better "phone" than his iPhone. Now is on Droid X and loves it. Kept the iPhone for games, an iPod, and such. The iPhone he still uses when he travels overseas or when he "drops the children" every morning. ;D
So moral of the story to the OP is to look at it 50/50 between the actual device and carrier. It is marriage to both. You can love iPhone with all your heart, but loathe AT&T because they drop more calls or the coverage might be worse. That overall experience won't be pretty. It is like marrying a beautiful wife, but the in-laws you can't stand have to live with you to make life a living hell.