ILSpy is a .NET decompiler and binary analyzer designed to convert compiled .NET assemblies back into readable C# source code. It functions as a metadata explorer and a common intermediate language viewer, enabling the analysis of compiled code and the execution of reverse engineering workflows.
The project distinguishes itself through specialized translation capabilities, such as converting compiled binary XML (BAML) back into human-readable XAML for user interface analysis. It also provides tools for inspecting native machine code and extracting metadata from program database (PDB) files.
The toolset covers a broad range of static analysis capabilities, including project-wide decompilation, code hierarchy navigation, and the visualization of control-flow graphs. It further supports binary inspection via typed intermediate language analysis, assembly content searching, and a managed plugin framework for extending core functionality.