Thanks for the proposed paths but I think we are stuck in C (not really C++).
VB is still basic and it still looks as ugly as basic did 30 years ago, Can't quite get excited about such a mess especially for signal processing. C# is really microsoft's version of Java. I don't know much Java, have little time to get into it don't think it is a good signal processing language and the idea of using a microsoft proprietary language is a bit sicking.
We have taken the perhaps back door approach of using Visual Studio 2005 C++ to generate the screens and then put calls in that generated code to our C routines (although they have to have a .cpp extension to make the system happy). Everything important like signal processing is done in C and we have a large very important collection of this C code. No managed anything. The only issue is that, as this thread shows, sometimes in doing this the microsoft system fights you.
By the way, trying to set up a MFC only project in VS 2005 is also a bit of a problem. Microsoft also fight the process and does things behind your back to try and "manage" it. We decided that allowing things to default was the safest path through the microsoft mess. (As you can guess, No I really don't like microsoft).