List of Microsoft.NET IL disassemblers
A decompiler performs, as far as possible, the reverse operation to that of a compiler. In case of Microsoft.NET, it translates an assembly that has the IL code into a human readable form, which means in one of the Microsoft.NET languages.
It is not guaranteed that the decompiler will generate exactly the same code as originally used to compile a program.
I tried to collect the list of available tools for Microsoft.NET framework, so please take this list as-is, ordered without any preference.
Free Microsoft.NET IL disassemblers
The MSIL Disassembler is a companion tool to the MSIL Assembler (Ilasm.exe). Ildasm.exe takes a portable executable (PE) file that contains Microsoft intermediate language (MSIL) code and creates a text file suitable as input to Ilasm.exe.
ILSpy is the open-source .NET assembly browser and decompiler from the SharpDevelop team.
Dotnet IL Editor (a disassembler):
Dotnet IL Editor (DILE) allows disassembling and debugging .NET 1.0/1.1/2.0/3.0/3.5 applications without source code or .pdb files. It can debug even itself or the assemblies of the .NET Framework on IL level.
IL.View is an open-source Silverlight .NET assembly browser and decompiler. It doesn’t seem to be updated anymore.
from Jetbrains: dotPeek is a free-of-charge .NET decompiler from JetBrains, the makers of ReSharper and more developer productivity tools.
CCI consists of two components, CCI Metadata and CCI Code, which represent a .NET portable executable (PE) or debug file as an object model. Applications can then use the object model to analyze or modify the contents of the file.
Cecil is a library written by Jb Evain to generate and inspect programs and libraries in the ECMA CIL format. It has full support for generics, and support some debugging symbol forma
from Telerik is a free tool for .NET assembly browsing and decompiling. It lets you take an existing compiled assembly (.dll or .exe) and easily browse the symbols it contains, and then just as easily decompile the assembly language back to readable C#, VB and IL. JustDecompile is a standalone tool and it does not require Visual Studio. While JustDecompile is free, it is not open source. It is available from Telerik free-of-charge for perpetual use (there are no “time bombs” in the software). Since JustDecompile incorporates code and innovations from the commercial JustCode tool, we cannot make the JustDecompile source code available.
Assembly Analyzer is a tool for analyzing the metadata and resources within a .NET assembly, as well as disassembling non-CLI executable files. The tool allows you to view dependencies of assemblies and members. It uses the Mirror library (source included) for loading assembly metadata and other Portable Executable-format files.
Free .NET Decompiler. DevExtras .NET CodeReflect is a simple yet advanced free .NET assembly browser/decompiler. It is a free alternative to Red Gate’s/Lutz Roeder’s .NET Reflector.
DevExtras .NET CodeReflect is a simple yet advanced free .NET assembly browser/decompiler. It is a free alternative to Red Gate’s/Lutz Roeder’s .NET Reflector.
Commercial Microsoft.NET IL disassemblers
Decompiler.NET is a commercially available combination of Decompiler, Obfuscator, Language Translator, and Refactoring Tool for Microsoft .NET managed applications.
Dis# (DisSharp) is a powerful tool to reverse engineer MSIL code into a human readable one.
Spices.Net Decompiler is a commercial tool that offers a productivity package for .NET software developers that is exceptional in the industry for ease of use and top of the range performance.
NET Reflector is a commercial assembly browser for the Microsoft .NET platform that can be used to explore, analyze, decompile, and debug the contents of any .NET assembly. Used to be free.