Skip to content
SPECIFICTION
Get listed

CFR vs dnSpyEx

CFR

benf.org

dnSpyEx

github.com

Side by side

FigureCFRdnSpyEx
Price fromFreeFree
Free planYesYes
Free trial——
Open source——
WindowsYesYes
macOSYes—
LinuxYesYes
APIYes—
Self-hostedYes—
Plans published11
Spec score · Reverse Engineering Tools8.2 (#10)7.7 (#22)
Spec score · Decompiler Software8.3 (#5)7.8 (#11)
LicenseThe maker’s FAQ directs users to the project README for its license; the project repository identifies the license as MIT.The repository states that dnSpy is licensed under GPLv3.
PurposeCFR is a Java decompiler that converts Java class files back into Java source.dnSpyEx is an unofficial continuation of dnSpy, a debugger and .NET assembly editor for working with assemblies without source code.

Plans

CFR

  • FreeFree

CFR pricing →

dnSpyEx

  • dnSpyExFree

dnSpyEx pricing →

In their own words

CFR

CFR is a free Java decompiler that reconstructs Java source from Java class files. It can process individual named classes, classes found on a classpath, or a whole JAR, and the command-line tool can place output in a chosen directory with the --outputdir option. Decompilation behavior can be adjusted through command-line options or an options file. The maker says CFR handles many features from Java 9, 12, and 14, and it can attempt class files from other JVM languages; those are rendered as Java rather than their original language. CFR is written in Java 6 and is said to run wherever Java 6 does. It is available as a downloadable JAR, through Maven, and from GitHub. The FAQ notes an API from version 0.135, and the project repository identifies the license as MIT. CFR handles bytecode rather than native code. Its maker also notes that some inputs fall into edge cases where output may be poor. There are no paid plans or usage limits stated.

Visit benf.org

dnSpyEx

dnSpyEx is an unofficial continuation of dnSpy, a debugger and .NET assembly editor for working with assemblies without source code. It can debug .NET Framework, .NET, and Unity game assemblies, with breakpoints, tracepoints, conditional breakpoints, exception breakpoints, and multiple-process debugging. Editing covers metadata and methods or classes in C# and Visual Basic, plus low-level IL method bodies. The project lists C# and Visual Basic decompilers using the ILSpy engine, along with a BAML decompiler and disassembler. Assembly search, class and method usage analysis, caller finding, bookmarks, and project export are also included. A public API supports extensions, and the C# Interactive window can control or script dnSpyEx. The latest stable release listed is v6.6.0, which adds a .NET 10 distribution. It is free under GPLv3. Release notes describe Wine compatibility adjustments for Linux, not native Linux support. Dynamic methods cannot be debugged because of CLR limitations.

Visit github.com