Исходный код написан на «родном» языке машины на компьютере, на котором он запущен, и выполняется непосредственно процессором.
Управляемый код написан на специальном языке, который требует выполнения другой программы (т. е. управления). Эта другая программа часто называется интерпретатором, поскольку она интерпретирует специальный язык.
Программы C и C ++ являются родными.
Java и C # (и все языки .NET, если на то пошло) управляемый.
Managed C ++ - это специальная форма C ++, которая выполняется в интерпретаторе .NET.
Смешанная программа - это программа, которая использует код, который является как родным, так и управляемым.