ilspy-decompile

Understand implementation details of .NET code by decompiling assemblies. Use when you want to see how a .NET API works internally, inspect NuGet package source, view framework implementation, or understand compiled .NET binaries.

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "ilspy-decompile" with this command: npx skills add aaronontheweb/dotnet-skills/aaronontheweb-dotnet-skills-ilspy-decompile

.NET Assembly Decompilation with ILSpy

Use this skill to understand how .NET code works internally by decompiling compiled assemblies.

Prerequisites

  • .NET SDK installed
  • ILSpy command-line tool available via one of the following:
    • dnx ilspycmd (if available in your SDK or runtime)
    • dotnet tool install --global ilspycmd

Both forms are shown below. Use the one that works in your environment.

Note: ILSpyCmd options may vary slightly by version.
Always verify supported flags with ilspycmd -h.

Quick start

# Decompile an assembly to stdout
ilspycmd MyLibrary.dll
# or
dnx ilspycmd MyLibrary.dll

# Decompile to an output folder
ilspycmd -o output-folder MyLibrary.dll

Common .NET Assembly Locations

NuGet packages

~/.nuget/packages/<package-name>/<version>/lib/<tfm>/

.NET runtime libraries

dotnet --list-runtimes

.NET SDK reference assemblies

dotnet --list-sdks

Reference assemblies do not contain implementations.

Project build output

./bin/Debug/net8.0/<AssemblyName>.dll
./bin/Release/net8.0/publish/<AssemblyName>.dll

Core workflow

  1. Identify what you want to understand
  2. Locate the assembly
  3. List types
  4. Decompile the target

Commands

Basic decompilation

ilspycmd MyLibrary.dll
ilspycmd -o ./decompiled MyLibrary.dll
ilspycmd -p -o ./project MyLibrary.dll

Targeted decompilation

ilspycmd -t Namespace.ClassName MyLibrary.dll
ilspycmd -lv CSharp12_0 MyLibrary.dll

View IL code

ilspycmd -il MyLibrary.dll

Notes on modern .NET builds

  • ReadyToRun images may reduce readability
  • Trimmed or AOT builds may omit code
  • Prefer non-trimmed builds

Legal note

Decompiling assemblies may be subject to license restrictions.

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Coding

dotnet-devcert-trust

No summary provided by upstream source.

Repository SourceNeeds Review
General

modern-csharp-coding-standards

No summary provided by upstream source.

Repository SourceNeeds Review
General

efcore-patterns

No summary provided by upstream source.

Repository SourceNeeds Review
General

csharp-concurrency-patterns

No summary provided by upstream source.

Repository SourceNeeds Review