C++.net has a lot of new libraries that C++ lacks; as well, it is designed to interact easily with other .net applications, such as visual studio.net, etc. However, it is also 'managed' code, which can create weird errors, and has a lot of more rules over how things have to be done than C++. I personally prefer regular C++ as opposed to managed c++.