ReSharper vs. Visual Studio

This document lists some of the features that are provided by ReSharper but are missing or not as fully implemented in bare Visual Studio.

As both products are being actively developed and their functionality changes on a regular basis, we consider this comparison valid for specific releases that are indicated in the header of the comparison table.

Microsoft Visual Studio 2022 17.12

ReSharper 2024.3

Code analysis
On-the-fly design-time code analysis for C#, VB.NET, XAML
On-the-fly design-time code analysis for all supported languages (including ASP.NET, XAML, and more)
800+ code analysis rules (code inspections)
1600+ code analysis rules (code inspections)
Design-time error highlighting: compiler errors for C#, VB.NET, JavaScript, TypeScript, and C++
Design-time error highlighting: most compiler errors, many possible runtime errors (such as detection of possible null reference exceptions) for all supported languages
400+ kinds of code issues that can be fixed automatically
2100+ kinds of code issues that can be fixed automatically
250+ quick actions to resolve code issues in C#, F#, and VB.NET
1500+ quick-fixes to resolve code issues in C#, VB.NET, ASP.NET, XAML, XML, JavaScript, TypeScript and other supported languages
Fix All in a document, project, solution, containing member, and containing type
Fix in Scope in a document, project, folder, solution
Full solution analysis for C# and VB.NET
Solution-wide error/warning monitor for all supported languages
Incoming calls
Integrated ESLint support
Reporting all errors and code quality issues in a file
Reporting all errors and code quality issues in any scope, up to the entire solution
Code annotations for nullability analysis
Code annotations help analyze solution with greater accuracy (nullability, contracts, etc.)
Suggest usings for types in installed NuGet packages
Custom code inspections and fixes with structural search and replace patterns
Analysis of code inside string literals
Track Value Source
Value tracking to analyze value origins and destinations
Refactoring
15 solution-wide refactorings
60+ solution-wide refactorings
120+ local refactorings (automated local code transformations)
500+ context actions (automated local code transformations)
Preview of local refactorings
Project-level cleanup refactoring: Sync Namespaces
Structural replace for same or similar code
Code generation
Create from usage
Create from usage
Generate code from code snippets (templates)
Generate code from configurable live, surround, source, and postfix templates
Generate files from templates
Generate files and file sets from configurable templates
Generate type members
Generate null checks for parameters
Visual editor for code snippets (templates)
Build tool
MSBuild
ReSharper Build: out-of-process incremental build tool that optimizes MSBuild and applies heuristics to build only projects that need updating, comes with a built-in NuGet package restorer
Project-level tools
Multi-project launch configuration
Run configurations for multiple startup projects, static methods, and external executables
Dependency graph Enterprise
Project Dependency Diagram, Assembly Dependency Diagram, and Type Dependency Diagram that do not require Visual Studio Enterprise Edition and display without compiling anything
Assembly explorer to open and navigate inside compiled assemblies
NuGet browser to explore packages, types, and namespaces in the NuGet gallery
Coding assistance
Code completion
Code completion is context-driven, can suggest types and extension methods from the entire solution, import namespaces, generate code, and more
Syntax highlighting
Syntax highlighting (different configurable colors for more identifier kinds)
Auto-import namespaces
Auto-import namespaces with NuGet search for types and namespace
Move line or selection up/down
Expand/Contract selection
Regular expressions assistance
Pasting items from clipboard history
Inlay hints for parameter names and type names
Inlay hints for parameter names, type names, and type conversions; push-to-hint mode
Integrated spell checking
Navigation & search
Code search
Search everywhere
Go to declaration
Go to declaration that also helps navigate between usages
Find references
Find usages of the current and related symbols, including text occurrences
Highlight references
Highlight references
Go to symbol
Go to symbol
Go to type
Go to type
Go to file member
Go to file member
Go to file
Go to file
Code bookmarks
Code bookmarks
Navigate to decompiled source
Navigate to decompiled code
View recent files
View recent files/recent edits and jump to last edit
Quick Launch
Go to action
Go to base
Gutter icons for implemented and inherited symbols
Gutter icons for implemented, inherited, and hiding symbols
Document outline
View global usings for a file
View and refactor global usings
Go to Text
Go to related and nearby files
Hierarchy views for projects, project references, types, CSS styles
Task List window
Code style
Reformat code
Reformat code in file, project, or solution, optionally with contextual configuration of formatting rules
Optimize namespace import directives
Configurable code syntax style inspections
Naming style
EditorConfig support
EditorConfig support with File Formatting Info window, which allows exploring all .editorconfig files that affect the current file
Code cleanup in file, project, or solution (C#)
Code Cleanup in any scope: selection, file, folder, project, solution (C#, VB.NET, C++, JavaScript, TypeScript, HTML, and other languages)
Remove unnecessary usings and unused private members in a file
Remove code redundancies in the scope of a method, a class, a file, a project or the whole solution
File header style via EditorConfig
File header style via EditorConfig or settings
Unit testing
Unit test explorer
Testing frameworks support (MSTest, VSTest, xUnit.net)
Testing frameworks support (MSTest, VSTest, xUnit.net, NUnit)
Run tests from the editor (MSTest and xUnit.net only)
Run tests from the editor
View test status in the editor (MSTest and xUnit.net only)
View test status in the editor
Code coverage tools Enterprise
Live Unit Testing Enterprise
Continuous testing dotUltimate
Multiple unit test sessions, which can run simultaneously and independently of one another
Debugger
DataTips in the editor
Searchable DataTips in the editor
Breakpoints window with grouping and export
Breakpoints window with preview, context search, grouping, and export
Method return values are shown in the editor
Values of local variables, current line expressions, and function returns are shown in the editor
Managing settings
Synchronize settings via Microsoft ID
Synchronize settings with team via VCS or any file hosting service
Settings layer system to store different settings for different solutions without conflicts
Security
Detect packages with vulnerabilities
Miscellaneous
Diagnostic tools
Diagnostic tools + Integrated performance and memory profilers dotUltimate
Localized GUI
Localized GUI
Free 30-day trial