I'm with techgnome. It all depends what is your personal objective.
If your programs work under XP, why not continue to run these programs on XP.
Why are you ungrading to Vista, Win7, etc. just because Microsoft says it is better and want to sell a new OS?
Do you need all the new bells and whisles in the new OS for your programs to work?
Remember the objective is to get input into memory and output out from memory -- period.
Any language will accomplish this, the question is which one you want to use.
If you think about it Classes are wrappers around APIs, and APIs are wrappers around the message stream.
I for one (I started with Fortran and COBOL) think NET and most OPP based programming is bloated.
Why does a program need to be 60 megabytes (in NET for example) when you can accomplish the same thing in 3 megabytes (in VB classic).
So first figure out your reason for what your doing, then make your decision.