Originally posted here by Juridian
Managed code is code that has its execution managed by the .NET Framework Common Language Runtime.

Think of it like the code that runs via the java runtime environment (it has some similarities).

In .net, the languages such as c#, vb.net, managed c++, etc are compiled to an Intermediate Language (think assembly language, not java bytecode..) assembly (an assembly is an executable or dll). When you run the code it is just in time compiled as you need it to machine language for the processor you are using.

Managed code has a greater degree of type safety, better security, and gives the ability for the code to be able to easily be extended or used by code built in other languages that are CLR compliant. So basically, I can use your C++ dll with my vb.net, c#, or whatever other application with minimal work.

You can still write the older style of C++ with .net, but they are working on moving people away from it.

I'd recommend picking up an account on http://safari.oreilly.com

An excellent overview of .net is : Understanding .Net - A tutorial and analysis
gonna get my C++ book, thanks again