I have an older
HTC Android phone (older meaning it began production about two years ago. I have had mine for a year and a few months). Mine works pretty much the same as it did the day I unboxed it. Better, really because we were given an upgrade to our operating system, which pretty much has pushed the limits of the hardware of this particular phone.
However, provided the phone still works at the end of the contract, it is still a useful phone and does all the things you would want a current smart phone to do and more. I don't think that just upgrading performance and ability to run apps is going to fuel phone upgrading forever. Something will change like it did a few years ago when everything was either about how much you could add to the functionality of a phone (like the Nokia N-series). It probably will, and it looks like smartphones are becoming more like tablets anyway.
I prefer Android phones because of the way I can define how my phone works, its screens, how I manage my files and downloads, Google's philosophy/open source nature of the Android platform, and I never got along well with Apple products. I came close to getting an iPhone, but I am glad we decided on something different.
Before that, I had a Blackberry Curve which was barely functioning at the end of my 18 month contract. TBH, I beat the hell out of it. I loved that phone until it started playing up, but there were hardware issues from the outset which coupled with the clunkiness of the OS (and the price of apps when I was changing phones) made me decide against another BB for the time being. I don't know about their newer phones, but I will probably be looking at another Android when we upgrade.