W .NET programy są kompilowane do MSIL (języka pośredniego, bytecode'u).
Następnie przy uruchamianiu, Framework kompiluje MSIL do kodu binarnego pod dany OS i procesor.
Ale nie robi tego przy każdym uruchomieniu, tylko wtedy, jeśli w pliku zaszły jakieś zmiany.
Więc Framework musi gdzieś trzymać skompilowany program, tylko gdzie?
Albo inne pytanie: Jak samemu skompilować program w .NET do binarki?
Jest taki program Salamender Protector który w jakiś sposób kompiluje, tylko nie wiem czy na pewno do normalnych binarek.