1. The milestone-release system in most big distros. For Ubuntu, the biggest and supposedly most user-friendly distro, I'm expected to upgrade every 6 months. One could argue that if your system is working OK, then you can stick with one release forever--imagine still using 8.04 in 2011. But what if I want Firefox 4, or a new version of a single program? In Windows, you just go to the website and install, or sometimes the program auto-updates itself. On Ubuntu, I must update the entire system, even if I want just one program to update. That means when I update to Firefox 4, there's a chance my wifi will no longer work (happened to me in 9.04), or that hibernate won't work (happened to me in 11.04) or that my desktop environment will be shockingly different for no reason. All I wanted was Firefox--but to get it, I've got to swallow Unity and any other half-baked software the distro throws at me.
My mom ranted at me for 15 minutes because I installed FF4 on her Windows machine and now her "Home" button was on the other side of the address bar and her address bar wasn't on top anymore. Can you imagine if she had been using Ubuntu, clicked "yes" to the upgrade prompt just to get it out of the way, and had been presented with Unity? She would have had a stroke.
Yes, you can install PPA's and through various console voodoo upgrade only certain parts of the system, but not every program has a PPA and installing them is beyond a mere mortal's grasp.
And, even if you decide to skip a 6-month upgrade, at some point you won't have a choice--security updates will stop coming. Good luck upgrading an Ubuntu system with 2 years of upgrades in a row--you're going to have to flatten and reinstall, again something beyond mere mortals.
2. Quality control--and this is tied in with #1. Again going with Ubuntu (but I think this applies to most other distros as well): every time I upgrade, I'm presented with a literal swamp of fresh bugs and regressions for things that used to work. I've been using the same laptop since 8.04, and with each upgrade something that used to work breaks, something that was broken before gets fixed, and I get new bugs to deal with. Sometimes hibernate doesn't work; sometimes wifi; sometimes the boot splash is corrupt; sometimes this, sometimes that. I know quality control is a hard thing to do considering it's all volunteer-powered and we're fighting against propriety lock-in; but there's just no excuse if you're trying to put Linux on the desktop.
If Linux is to beat Windows, it has to be easy to update specific software without updating every damn thing and without regressions. Windows has, more or less, managed to do this. So far Linux hasn't, for whatever reason. Until they do, it'll be relegated to being an enthusiast's OS (and there's nothing wrong with that either).