# dnSpy — .NET Debugger and Assembly Editor > dnSpy is a debugger and .NET assembly editor that lets you read, edit, and debug .NET and Unity assemblies without source code. ## Install Save in your project root: # dnSpy — .NET Debugger and Assembly Editor ## Quick Use ```bash # Download the latest release from GitHub # Extract and run dnSpy.exe (Windows only) dnSpy.exe # Open an assembly from the command line dnSpy.exe MyApp.dll # Debug a running process dnSpy.exe --pid 1234 ``` ## Introduction dnSpy is a .NET debugger and assembly editor that provides a full-featured IDE experience for analyzing, editing, and debugging .NET assemblies without needing the original source code. It is widely used in security research, malware analysis, and game modding. ## What dnSpy Does - Decompiles .NET assemblies to C#, Visual Basic, or IL - Provides an integrated debugger for .NET Framework and .NET Core apps - Allows in-place editing of IL code, metadata, and resources - Supports searching across loaded assemblies by type, method, or string - Handles Unity game assemblies and mono-based applications ## Architecture Overview dnSpy builds on the ILSpy decompiler engine and Roslyn for C# editing, wrapping them in a VS-like shell with a custom debugger that attaches to CLR runtimes. The editor modifies assemblies in-memory using dnlib, a low-level .NET metadata library, and writes changes back to disk without requiring recompilation. ## Self-Hosting & Configuration - Download pre-built binaries from GitHub Releases (no installer needed) - Runs on Windows; requires .NET Framework 4.7.2+ for the host app - Supports debugging both .NET Framework and .NET Core/.NET 5+ apps - Themes, fonts, and decompiler settings are configurable via the Options menu - Note: the project is archived; community forks continue development ## Key Features - Full C# decompilation with syntax highlighting and navigation - Integrated debugger with breakpoints, watch windows, and call stacks - Assembly editing: modify IL, add/remove members, change metadata - Hex editor for raw binary inspection within the same UI - Plugin architecture for extending functionality ## Comparison with Similar Tools - **ILSpy** — read-only decompiler; dnSpy adds debugging and editing - **dotPeek** — JetBrains decompiler with symbol server but no editing - **JustDecompile** — Telerik decompiler, now discontinued - **de4dot** — .NET deobfuscator that complements dnSpy for obfuscated assemblies - **Rider / Visual Studio** — full IDEs that require source code; dnSpy works directly on binaries ## FAQ **Q: Is dnSpy still maintained?** A: The original repository is archived, but active community forks such as dnSpyEx continue development with new features and bug fixes. **Q: Can I use dnSpy on Linux or macOS?** A: dnSpy is Windows-only. For cross-platform .NET decompilation, ILSpy offers an Avalonia-based UI that runs on Linux and macOS. **Q: Does dnSpy handle obfuscated assemblies?** A: It decompiles them as-is. For better results, run a deobfuscator like de4dot first, then open the cleaned assembly in dnSpy. **Q: Can I save edited assemblies?** A: Yes. After editing IL or metadata, use File > Save Module to write the modified assembly to disk. ## Sources - https://github.com/dnSpy/dnSpy - https://github.com/dnSpyEx/dnSpy --- Source: https://tokrepo.com/en/workflows/asset-3722dd82 Author: AI Open Source