Why is it so easy to decompile .NET IL-code into source code, compared to decompiling native x86 binaries? (Reflector produces quite good source code most of the time, while dec
Extending Brian's correct answer
If you think all IL is easily decompilable, I suggest writing a non-trivial F# program and attempting to decompile that code. F# does a lot of code transformations and hence has a very poor mapping from the actual emitted IL and the original code base. IMHO, it is significantly more difficult to look at decompiled F# code and get back the original program than it is for C# or VB.Net.