Is it correct to assume that a native program built on an XP machine (using MFC or the Win32 API directly) will run on Windows Vista? The reason I'm asking is that until .NET becomes as ubiquitous as the Win32 API, I am going to stay away from it as much as possible. If for some reason I do use one of the .NET based libraries, I'll use C++/CLI. In another thread, a poster likened C++/CLI to a freak. Yep, it's ugly, but I tried C# and found that writing each line of C# code was like eating a spoonful of puke. I don't know what it is, but I just can't do C#. At least with C++/CLI, I feel like I'm still handling and caring for my poor, mutilated baby. Fortunately, I have the luxury of choosing my programming languages. Anyway, is my assumption correct, regarding Win32-based native code running on Windows Vista?