Compare assemblies, NuGet packages, and more
File | Compare...
dotPeek allows you to compare two assemblies, NuGet packages, archives, or folders. Each comparison is presented as a top-level node in the dedicated Assembly Diff tool window; you can expand this node and see differences in the assembly structure right away, and in addition to that, you can double-click types, members, and other elements to see a text-based comparison in the specified diff tool.
Do one of the following:
Select File | Compare... from the main menu.
Right-click an assembly, a NuGet package, or a folder in the Assembly Explorer, then choose Compare With.
If the Assembly Diff window is already open, click Compare on its toolbar to initiate a new comparison.
In the dialog that opens, select one of the tabs corresponding to the compared items kind, pick files or folders for comparison, and click OK.
The comparison will appear as a new top-level node in the Assembly Diff tool window.
Use the toolbar selector to choose one of the diff modes:
Show all — all items within both entities will be displayed.
Show only differences — only items with differences and items that are missing in one of the entities will be shown. All identical items will be hidden.
Show only signature differences — only members with different signatures are shown. Members with the same signatures (bodies are ignored) as well as all identical items will be hidden.
Show only public API differences — only public members with different signatures are shown. Public members with the same signatures (bodies are ignored), all non-public symbols, as well as identical items will be hidden.

Elements within the comparison node (types, members, files) are highlighted in different colors with the following meanings:
Green — the element is present in the second assembly and absent in the first assembly.
Red — the element is present in the first assembly and absent in the second assembly.
Violet — the element is present in both assemblies, and it has differences.
When you double-click an element with differences, the comparison opens in an external diff tool. If the diff tool is not specified, a dialog will appear where you can specify it:

If any of the following applications are installed on your machine, dotPeek will detect them and suggest using one of them as the diff tool: Visual Studio, KDiff, Beyond Compare, WinMerge, P4Merge, and Meld. Alternatively, specify the path to a diff tool and command line arguments to open the compared documents. The documents are referred to as $1
and $2
. The selected tool and its arguments will be saved for later comparisons, and you can change it on the Diff page of dotPeek options Ctrl+Alt+S.
tip
In the right-click menu on a comparison node, you can choose to locate the first or the second entity in the Explorer, or copy their paths to the clipboard.
To finish comparing assemblies, select the comparison node and press Delete or right-click it and choose Remove Item from List.