After using XP Pro SP2 for the longest time, I found myself in a situation where in order to complete a certain project, I would either need to install SP3 or upgrade. Not wanting to do the former, I decided to go all out and get a new machine with Win7 Ultimate x64. Frankly, I hated Win7 for the first couple of days, but now I absolutely love it. The default settings are horrible, IMO, but almost everything can be tweaked to your liking. It's just a matter of taking the time to learn how to get Win7 to do what you want it to do.
I still have XP on my older machine, but I haven't booted it up in months. It's true that some x86 programs won't run on Win7 x64, but in my experience, all but two of my programs run perfectly on Win7.