I'd like to know if it is possible to develop C++ software for NXT2 using Visual Studio 2010 as IDE. I know there are small online projects for NXT but I can't find nothing about NXT2.... Any suggestions would be more than welcomed about libraries, software and firmware that is required to achieve this goal: C++ and Visual Studio for NXT2.
There are some answers to this on Stack Overflow: C++ OOP Library for Programming the Lego NXT
NXT++ is the best choice with dual USB/Bluetooth support. The C++ communication library has more features, but it's Bluetooth-only.
I think that all you might need is the Microsoft Robotics Developer Studio. The examples that I could find all refer to C#, VB.Net, or the included VPL languages but there isn't any reason you wouldn't be able to reference the same objects from managed C++.
It does look like there might not be a full set of services for all of the more recent parts judging from some of the comments in one of the examples that I saw, but the author of that article does have a few other notes elsewhere.
After installing and playing around with it a bit myself, I did find a link to the MSDN documentation for using NXT with MRDS that you can look through before you get started. (I wasn't able to give much of it a try yet because I'm out of batteries with my NXT brick.)
Beyond that a Google search for "mrds nxt" found the following likely useful items: