Hmmm I think you're missing a couple of points somewhat here...
Firstly, the main reason you need to keep upgrading Windows PCs is because each incarnation of Windows requires more and more resources to do the same stuff. Mac OS's aren't like that and each release is quicker than previous releases so you haven't got as much of a reason for upgrading. Hardware useful lifespan is longer.
Secondly, the second hand value of a Mac is much greater than that of a PC, just take a look on eBay. So if you did want to upgrade it's cheaper to replace with something brand new and shiny and sell on the old machine. With a "bitsa" PC that you've played with, removed stuff, put more stuff in, it's much harder to price realistically and you won't attract as high a premium.
I've got more PC bits kicking around my house than I know what to do with yet despite having paid good money for them over the years, they are effectively worthless.
Thirdly, no one has mentioned this, USB and firewire. OK, you can't upgrade the graphics on an iMac, and it's a bit of a hassle replacing the internal drive, but you can upgrade the Hard drive by plugging in another one - no noticeable drop in performance there, you can even boot off it and make it your primary if you want. Plus you can plug in countless other USB / firewire peripherals this way.
I suppose if you enjoy changing your PCs hardware every couple of months and re-installing drivers and OSs and suchlike then Windows is the way to go. If you would rather have a fast stable system that does everything you want I know which way I'd go (and did... used PC's for 20 years and switched 6 months ago and can't say I regret it at all
)