Interesting point.
I don't fully understand the second part though, could you elaborate?
I.e. are you meaning that you could buy the newest iPhone every 2 years for the same price as buying last year's model every 2 years?
I've got the 4s which I bought at it's release 2 years ago. I got a quote from Gazelle a few weeks ago for $210 for them to buy 16GB iPhone 4s (quote is good until Oct. 15) so picking up the new phone at release and not waiting actually gets me $10 (not counting tax and any carrier activation fees).
Since getting my first iPhone (the 3GS) the Gazelle payment has been right around $200 for two year old iPhones. They're actually (as of a minute ago) still doing $180 for AT&T iPhone 4s 16GB, I'm surprised it's still that high.
So people who wait and get it later are losing money on the buy back payment. Plus, the carrier is getting "extra" money from them each month for no reason (if the iPhone is $649 unsubsidized, then $19 of your bill each month goes to pay for your phone, after 24 months, you're throwing that $19 away).
Some people say "I don't need a new one every 2 year, I can wait three years". But they'll still be paying the $19 a month (their carrier loves them!) and their phone will worth $100 less (and for that least year, the battery probably didn't hold a charge as well and the phone ran slower than a newer one would have).
If you buy AppleCare+, you can't even get it for a 3rd year (so if it breaks it's not worth much at all); but I don't really want to turn this into an AppleCare discussion...
It's expensive to just give your old iPhone to someone (it'll pay for the new one) and it makes no sense for a friend to buy it from you for $200 when they could just get a new iPhone for the same amount.
Buyback isn't as good for the larger models (32GB / 64GB) so you might want to explore other options (like eBay).
Gary