Managed code runs inside the .NET Framework runtime (CLR), unmananged code
runs outside the runtime. So unmanaged code can talk directly to the
Operating System, memory, ... while managed code talks to the runtime, and
the runtime talks to the OS, memory, ...
In general managed code are .NET assemblies (exe, dll, ...), unmaged code
are ActiveX components writtin in VB6 for example, C dll's, ...