JetBrains are also about to include decompiling functionality into their forthcoming release of ReSharper 6. In fact, decompiling has been announced as part of ReSharper 6 back in February 2011, and available in ReSharper 6 pre-release nightly builds since then.
dotPeek decompiles any .NET assemblies to C# code.
The idea behind dotPeek is to bring ReSharper experience to browsing external assemblies and make this available to everyone. That essentially means that the main thing that distinguishes dotPeek from other decompiler around is that the majority of navigation features from ReSharper are available in dotPeek as well. Let's take a closer look at those:
- Context-insensitive navigation (go to symbol/file/type/file member)...
- Context-sensitive navigation (go to declaration/base/inheritor/implementation)..
- Tool windows (File Structure, Type Hierarchy)..
- Navigate between tool windows (from code view to assembly explorer)
Non-navigation features derived from ReSharper:
- Extend/shrink selection