JetBrains Rider vs Visual Studio (with and without ReSharper)

The goal of this document is to illustrate some points where JetBrains Rider — a standalone .NET IDE — differs from Microsoft Visual Studio, with and without JetBrains ReSharper extension.

As the compared 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.

If you discover any missing or inaccurate items in this table, please post a comment below to let us know, and we'll update the table as soon as possible.

Microsoft Visual Studio 2022 17.12

Microsoft Visual Studio 2022 17.12 + ReSharper 2024.3

JetBrains Rider 2024.3

General
Works for .NET and Front-end code
Works for .NET and Front-end code
Works for .NET and Front-end code
Works for C/C++ code
Runs on Windows
Runs on Windows
Runs on Windows, macOS, and Linux
64-bit process
64-bit process
64-bit process
Integrated VCS client
Support for Git and Azure DevOps
Support for Git and Azure DevOps
Visual diff and merge
Visual diff and merge
Repo history view with filtering by substring
Repo history view with filtering by substring
Repo history view with filtering by substring, branches, users, dates, paths
History view for a file
History view for a file
VCS status highlight for files
VCS status highlight for files
VCS status highlight for files and file members
Pull request drafts and templates
Pull request drafts and templates
Copy GitHub link
Copy GitHub link
Commit a part of the changes in file
Commit a part of the changes in file
Multiple repositories in one project
Multiple repositories in one project
Multiple repositories in one project
Customize AI prompt for commit message
Customize AI prompt for commit message
Create internal GitHub repos
Create internal GitHub repos
Visualize, compare, and revert changes right in the editor
Pre-commit checks and cleanup
Ability to abort Git merge and cherry-pick processes
Dealing with code issues
On-the-fly design-time code analysis for C#, F#, VB.NET, XAML
On-the-fly design-time code analysis for all supported languages (including C++, ASP.NET, XAML, and more)
On-the-fly design-time code analysis for all supported languages (including C++, ASP.NET, XAML, JavaScript, TypeScript, SASS, LESS, HTML, SQL, XSLT, YAML, and more)
800+ code analysis rules
Fix All in a document, project, solution, containing member, and containing type
Fix in Scope in a document, project, folder, solution
Fix in Scope in a document, project, folder, solution
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
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
2200+ kinds of code issues that can be fixed automatically
Roslyn analyzers support
Roslyn analyzers support
Roslyn analyzers support, also in solution-wide error/warning monitor
300+ quick actions to resolve code issues in C# and VB.NET
1600+ quick-fixes to resolve code issues in C#, VB.NET, C++, ASP.NET, XAML, and other supported languages
1700+ quick-fixes to resolve code issues in C#, C++, VB.NET, ASP.NET, XAML, XML, JavaScript, TypeScript, SQL, and other supported languages
Full solution analysis for C# and VB.NET
Solution-wide error/warning monitor for all supported languages
Solution-wide error/warning monitor for all supported languages
Suggest usings for types in installed NuGet packages
Integrated ESLint support
Integrated ESLint and JSHint linters support
Document Health Indicator
Code annotations for nullability analysis
Code annotations help analyze solution with greater accuracy (nullability, contracts, etc.)
Code annotations help analyze solution with greater accuracy (nullability, contracts, etc.)
C# source generators support
C# source generators support
Analysis of code inside string literals
Analysis of code inside string literals, tags and attributes, and SQL queries in C# and other languages.
Reporting all errors and code quality issues in any scope, up to the entire solution
Reporting all errors and code quality issues in any scope, up to the entire solution
Custom code inspections and fixes with structural search and replace patterns
Files with errors are highlighted on editor tabs and in the Solution Explorer
Code exploration
Incoming calls
Track Value Source
Value tracking to analyze value origins and destinations
Value tracking to analyze value origins and destinations
Dependency graph Enterprise
Project Dependency Diagram and Type Dependency Diagram that display without compiling anything
Map mode with preview for vertical scroll bar
Map mode with preview for vertical scroll bar
Code Lens (hover over editor scrollbar to preview file text outside of the visible area)
CodeLens (symbol info on declaration)
CodeLens (symbol info on declaration)
Code Vision (symbol info on declaration)
Peek definition
Highlight references
Highlight usages (read and write with different colors)
Highlight usages (read and write with different colors)
Gutter icons for implemented and inherited symbols
Gutter icons for implemented, inherited, and hiding symbols
Gutter icons for implemented, inherited, and hiding symbols
File members in Solution Explorer
File members in Solution Explorer
File members selectors at the top of the editor
File members selectors at the top of the editor
Document outline
View global usings for a file
View and refactor global usings
View and refactor global usings
Task List window
Compare selected files
Compare selected files
Hierarchy views for projects, project references, types, CSS styles
Refactoring
15 solution-wide refactorings
60+ solution-wide refactorings
60+ solution-wide refactorings
120+ local refactorings (automated local code transformations)
500+ context actions (automated local code transformations)
600+ context actions (automated code transformations)
Preview of local refactorings
Project-level cleanup refactoring: Sync Namespaces
Project-level cleanup refactorings: Adjust Namespaces and Move Types into Matching Files.
Structural replace for same or similar code
Code generation
Create from usage
Generate code from code snippets (templates)
Generate code from configurable live, surround, source, and postfix 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
Generate configurable null checks for parameters
Generate configurable null checks for parameters
T4 templates support
T4 templates support
Visual editor for code templates
Visual editor for code templates
Simple way to share custom code templates
Simple way to share custom code templates
Build and run
Build with MSBuild
Build with MSBuild or with ReSharper Build, out-of-process incremental build tool that only builds projects that need updating, comes with a built-in NuGet package restorer
Build with MSBuild or with ReSharper Build, out-of-process incremental build tool that only builds projects that need updating, comes with a built-in NuGet package restorer
Multiple startup projects
Multiple startup projects
Run configurations for running/debugging static methods
Run configurations for running/debugging static methods
Build with selected MSBuild version
Build with selected MSBuild version
Debugger
Remote debugging
Remote debugging
Debug external C# code even without debug symbols, requires some initial configuration
Debug external C# code even without debug symbols, requires some initial configuration
Debug external C# code even without debug symbols, no configuration is required
DataTips in the editor
Searchable DataTips in the editor
Searchable DataTips in the editor
Visualize data structures
Visualize data structures
Configurable object presentation in DataTips
Configurable object presentation (Pin to top)
Configurable stack frames presentation (Pin to frame)
Method return values are shown in the editor
Values of local variables, current line expressions, and function returns are shown in the editor
Values of local variables, current line expressions, and function returns are shown in the editor
Memory window
Memory window
WPF Tree Visualizer
WPF Tree Visualizer
Live Visual Tree
Live Visual Tree
Live Property Explorer
Live Property Explorer
Snapshot debugger
Snapshot debugger
IntelliTrace
IntelliTrace
Breakpoints window with grouping and export
Breakpoints window with preview, context search, grouping, and export
Breakpoints dialog with search and grouping
Dependent breakpoints
Dependent breakpoints
Temporary (remove-once-hit) breakpoints
Temporary (remove-once-hit) breakpoints
Temporary (remove-once-hit) breakpoints
Break by condition (thread, process, machine name)
Break by condition (thread, process, machine name)
Data breakpoints (.NET Core 3.0+)
Data breakpoints (.NET Core 3.0+)
Run to Cursor, Run to Click
Run to Cursor, Run to Click
Force Run to Cursor
Force Run to Cursor
Set Next Statement
Set Next Statement
Step Into Specific
Step Into Specific
Edit and Continue
Edit and Continue
Immediate Window
Immediate Window
Parallel stacks
Parallel stacks
Freeze and unfreeze threads
Freeze and unfreeze threads
Task view
Task view
Search in debugger views
Search in debugger views
Mono debugging (including remote)
Project-level tools
NuGet package manager
NuGet package manager
NuGet package manager with instant search
Project templates
Project templates
Solution filters
Solution filters
SLNX format support
SLNX format support
SLNX format support
Safe delete project refactoring
Coding assistance in .csproj files
Azure-specific tools
Azure-specific tools
Azure-specific tools
Xamarin-specific tools
Xamarin-specific tools
UWP support
UWP support
UWP support
MSIX support
MSIX support
Issue tracker integration (Azure DevOps, VSTS)
Issue tracker integration (Azure DevOps, VSTS)
Visual Studio Live Share
Visual Studio Live Share
NuGet browser to explore types and namespaces from the NuGet-gallery packages
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
Code completion is context-driven, can suggest types and extension methods from the entire solution, import namespaces, generate code, and more
Auto-import namespaces
Auto-import namespaces with NuGet search for types and namespace
Auto-import namespaces with NuGet search for types and namespace
Move line or selection up/down
Expand/Contract selection
Extend/Shrink selection
WPF visual designer
WPF visual designer
WPF preview
WinForms visual designer
WinForms visual designer
Pasting items from clipboard history
Regular expressions assistance in C# and VB.NET
Regular expressions assistance in C#, plus regular expression validator
Regular expressions assistance in C#, JavaScript, TypeScript, JSON, and SQL
Quick Info
Structural navigation with Tab/Shift+Tab
Structural navigation with Tab/Shift+Tab
Inlay hints for parameter names and type names
Inlay hints for parameter names, type names, and type conversions; push-to-hint mode
Inlay hints for parameter names, type names, and type conversions; push-to-hint mode
Sticky scroll
Sticky scroll
Brace pair colorization
Brace pair colorization
Markdown editor with preview
Markdown editor with preview
Syntax highlighting
Syntax highlighting (different configurable colors for more identifier kinds)
Syntax highlighting (different configurable colors for more identifier kinds)
Integrated spell checking
Highlight occurrences that match editor selection
Highlight occurrences that match editor selection
Highlight occurrences that match editor selection
Visualize whitespaces in file
Visualize whitespaces in file
Visualize whitespaces in file or selection
Local history (tracking uncommitted changes)
Scratches (files and buffers for prototyping)
Navigation
Go to declaration
Go to declaration that also allows navigating between usages
Go to declaration that also allows navigating between usages
Go to implementation
Find references
Find usages of the current and related symbols, including text occurrences
Find usages of current and related symbols, show usages in a popup
View recent files
View recent files/recent edits and jump to last edit
View recent files/recent edits and jump to last edit
Code bookmarks
Go to related and nearby files
Search
Code search
Local and global Find/Replace
Local and global Find/Replace
Local and global Find/Replace (index-based, with filters, e.g. except literals or only in comments)
Go to symbol
Go to type
Go to type
Go to type
Go to file member
Go to file
Quick Launch
Go to Text
Compiled-code tools
Integrated decompiler (ILSpy)
Integrated decompiler (dotPeek)
Integrated cross-platform decompiler (dotPeek)
Object Browser
Object Browser + Assembly explorer to open and navigate compiled assemblies
Assembly explorer to open and navigate compiled assemblies
Navigate to decompiled source (only when debugging)
Stack trace explorer
Code style
Reformat code in file
Reformat code in file, project, or solution, optionally with contextual configuration of formatting rules
Reformat code in file, project, or solution, optionally with contextual configuration of formatting rules
Granular formatting rules (e.g. ~45 rules for C#)
Granular formatting rules (e.g. ~220 rules for C#)
Granular formatting rules (e.g. ~220 rules for C#)
Optimize namespace import directives
Configurable code syntax style inspections
Naming style
EditorConfig support
Visual editor for .editorconfig files
Visual editor for .editorconfig files
Coding assistance and navigation in .editorconfig files
Clang-Format support
Code Cleanup in file, project, or solution (C#)
Code Cleanup in any scope: selection, file, folder, project, solution (C#, VB.NET, C++, and other languages)
Code Cleanup in any scope: selection, file, folder, project, solution (C#, VB.NET, C++, JavaScript, TypeScript, HTML, and other languages)
Run code cleanup on save
Run code cleanup on save and cleanup recently modified files
Run code cleanup on save and before VCS commit
File header style via EditorConfig
File header style via EditorConfig or settings
File header style via EditorConfig or settings
Remove code redundancies in the scope of a method, a class, a file, a project or the whole solution
Remove code redundancies in the scope of a method, a class, a file, a project or the whole solution
Align code in columns
Align code in columns
File/type member layout with visual editor
File/type member layout with XAML pattern
Unit testing
Unit test explorer
.NET testing frameworks support (MSTest, VSTest, xUnit.net)
.NET testing frameworks support (MSTest, VSTest, xUnit.net, NUnit)
.NET testing frameworks support (MSTest, VSTest, xUnit.net, NUnit)
C/C++ testing frameworks support (Microsoft Unit Testing Framework for C++, Google Test, Boost.Test, CTest)
C/C++ testing frameworks support (Google Test, Boost.Test, Catch, doctest)
C/C++ testing frameworks support (Google Test, Boost.Test, Catch, doctest)
Run tests from the editor (MSTest and xUnit.net only)
Run tests from the editor
Run tests from the editor
View test status in the editor (MSTest and xUnit.net only)
View test status in the editor
View test status in the editor
Code coverage tools Enterprise
Live unit testing Enterprise
Continuous testing dotUltimate
Continuous testing dotUltimate
Run tests until failure
Repeat tests until failure
Repeat tests until failure
Multiple unit test sessions, which can run simultaneously and independently of one another
Multiple unit test sessions, which can run simultaneously and independently of one another
JavaScript testing frameworks support (QUnit, Jasmine, Cucumber.js, Jest, Karma, Mocha, Protractor)
Database tools
Built-in support for MS Access and ODBC
Built-in support for MS Access and ODBC
Built-in support for SQL Server, Azure SQL, Oracle
Built-in support for SQL Server, Azure SQL, Oracle
Built-in support for SQL Server, Azure SQL, Oracle
Built-in support for MySQL, Postgre SQL, Sqlite, Sybase, DB2, Derby, H2 HSQLDB, MongoDB, Couchbase
Database projects support (*.sqlproj)
Database projects support (*.sqlproj)
Database projects support (*.sqlproj)
Compare database schemas
Compare database schemas
SQL editing tools
SQL editing tools
SQL editing tools (including navigation, templates, quick-fixes)
SQL editing tools inside string literals in C#, VB.NET, JavaScript, TypeScript, etc.
Managing settings
Synchronize settings via Microsoft ID
Synchronize settings with team via VCS or any file hosting service
Synchronize settings with team via VCS, JetBrains Account, or any file hosting service
Settings layer system to store different settings for different solutions without conflicts
Settings layer system to store different settings for different solutions without conflicts
Game development
Basic Unreal Engine support
Basic Godot projects support
Basic Godot projects support
Work with multiple solutions
Open several solutions with multiple Visual Studio instances
Open several solutions with multiple Visual Studio instances
Choose whether to open a solution in a new window
Individual colors for multiple solution windows
Security
Detect packages with vulnerabilities
Maintain a list of trusted files and folders
Trust settings inherited from Visual Studio
Miscellaneous
Interactive installer that allows reconfiguring existing installation
Interactive installer that allows reconfiguring existing installation
Interactive installer
Background update to a new version
Diagnostic tools
Diagnostic tools + Integrated performance and memory profilers dotUltimate
Integrated performance profiler dotUltimate
Localized GUI
Localized GUI
Localized GUI
Full screen mode
Full screen mode
Full screen, Presentation, and Zen modes
Zoom editor
Zoom editor
Zoom editor or entire IDE
Integrated terminal
Integrated terminal
Free 30-day trial