Code that targets the runtime is known as managed code, while code that does not target the runtime is known as unmanaged code.
Closely related to managed code is managed data—data that is allocated and de-allocated by the common language runtime's garbage collector. C#, Visual Basic, and JScript .NET data is managed by default.