Consume NuGet packages
You can install, update, and remove NuGet packages by using the NuGet window Alt+Shift+7 and NuGet quick list Ctrl+P, N.
Browse installed and available NuGet packages
By default, the Packages tab of the window shows all packages installed in the whole solution in the Installed category. You can change the view to only show packages of a specific project. To do so, use the scope selector next to the search field:

Available packages are shown in the Discover category.
Packages that are referenced from other installed packages are displayed in the Implicitly Installed category shown below the main category. Their versions are shown in parentheses because you cannot upgrade or downgrade them. To learn which package references an implicitly installed one, right-click it and choose Quick NuGet Documentation or press Ctrl+Q.
You can select installed or available packages in the left part of the Packages tab, and use the right part to check package details, as well as to install, upgrade/downgrade, or remove the package in specific projects:

Restore and update NuGet packages
Rider integrates NuGet restore into the IDE and optimizes it for performance. It supports several restore engines and uses Automatic selection by default. Most users can keep this setting.
Restore makes the package versions required by your projects available locally. It reuses cached packages where possible and downloads missing packages from configured sources. Restore does not update your package references to newer versions.
Restore engines
For projects that use PackageReference, the Restore engine setting provides these options:
Automatic [Default] — selects Embedded when Rider supports the selected .NET SDK and the environment where the solution runs. Otherwise, it selects MSBuild. For example, Rider uses MSBuild for WSL projects and SDK versions beyond those supported by its embedded NuGet libraries.
Embedded — runs restore inside Rider through NuGet APIs. It reuses project and dependency information already available in Rider’s project model. This avoids starting a separate CLI process and repeating much of the work needed to evaluate projects, which makes restore substantially faster.
Embedded uses the NuGet libraries bundled with Rider. It does not support WSL projects. If you select Embedded for a WSL project, Rider uses MSBuild instead.
MSBuild — runs MSBuild with the restore target through Rider’s build infrastructure. It evaluates project dependencies and restores packages using the configured toolset. This option can help with restore workflows that depend on custom MSBuild targets or tools such as Paket.
Console — runs the external
dotnet restorecommand through the configured .NET toolset. Rider also uses this engine for restore requests with custom global properties, because these require separate project evaluation.
MSBuild and Console use the configured toolset’s restore implementation. This can matter when your workflow requires the exact restore behavior of a pinned SDK.
To configure the restore engine, use Restore engine under in the settings. Most users do not need to change it.
Restore packages
Rider can restore missing packages automatically when you open or build a solution. Configure this behavior under .
To restore packages manually, choose , or click Restore
in the NuGet window.
If references remain unresolved after a restore, try . This forces restore to resolve dependencies again. It uses the same restore engine that is selected in settings.
You can inspect restore messages in the Log tab of the NuGet window.
Update packages
To update packages to newer versions, click Update Packages…
in the NuGet window and select the packages to update.
Alternatively, select packages in the Installed category and click Update.
To use a specific version, select the package, choose the required version, and update the relevant projects.
Find and install NuGet packages
To find a NuGet package, switch to the Discover category and use the search field.
In the search field, you can enter a package name to look for or use prefixes: T: to look for types and N: to look for namespaces.
By default, Rider searches all available package sources, but you can limit the search scope using the corresponding selector:

Install or upgrade/downgrade a NuGet package
Find a package as described above and select it in the left part of the Packages tab
In the right part of the tab, choose a project where you want to install the selected package. If your solution contains too many projects, you may want to use the scope selector on the toolbar to display a specific project and hide all others.
Use the Prerelease checkbox on the toolbar to show or hide pre-release versions of the package.
Use the Version selector to choose the required version of the package.
Before installing the selected package, you may want to check which dependent packages will be installed. To do so, expand Frameworks and Dependencies in the right part:

Depending on the selected package version, and on whether the selected package is installed in the selected project, you will be able to install, update or downgrade the package.
After installing a new package, you will see its readme.txt file in the editor so that you will be able to check if any additional steps are required after installing.
If a config file/XDT transformations are implemented in the package, JetBrains Rider will run them to help in adding required entries, for example to an App.config or Web.config file.
The easiest way to start the search for a NuGet package is to use the corresponding Alt+Enter action that becomes available for unresolved namespaces:

... and types:

In any case, JetBrains Rider will open the NuGet window, where you will see all packages that contain the desired type or namespace.
Manage package sources
In the Sources tab of the NuGet window, Rider lists all NuGet configuration files discovered on your machine. You can add, remove, or edit package sources for the selected config file on the right panel, or click these files to open them in the editor.
If necessary, you can also add or remove package sources by editing the packageSources section of the NuGet.config configuration file. For example:
On Linux and macOS, use a POSIX path instead, for example /home/user/NuGetPackages/.
Credential providers for private NuGet feeds
JetBrains Rider lets you authenticate to private NuGet feeds that use with different authentication methods.
Authentication prompt for username/password combination
In the Sources tab of the NuGet window, you can edit or add a feed and add credentials in the form of a username/password combination.
The URL to private feeds is often shared with team members in the NuGet.config file that sits next to the solution file, so that everyone on the team can connect to such private feed. On the first load of such solution where package restore is required, JetBrains Rider will prompt for credentials.
When credentials are correct, they are stored in JetBrains Rider’s password store so that you do not have to re-enter credentials each time you access a NuGet feed. The password store is configurable on the Appearance and Behavior | System Settings | Passwords settings page Ctrl+Alt+S.
JetBrains Rider also has integrated credential providers for MyGet and Visual Studio Team Services (VSTS).
Use authentication plugins
For private feeds that use plugin-based authentication method, such as the one provided by Azure Artifacts, you need to change the Use credential providers preference on the Build, Execution, Deployment | NuGet settings page Ctrl+Alt+S to NuGet/.NET CLI plugins or to NuGet/.NET CLI plugins, then Rider integrated (if you use different authentication methods) and then restart JetBrains Rider.
Once authentication plugins support is enabled, the %USERPROFILE%\.nuget\plugins (Windows) and $HOME/.nuget/plugins (Linux/macOS) path will be monitored for credential provider plugins that are applicable, and JetBrains Rider will use those to perform necessary authentications.
NuGet options
You can configure NuGet preferences in the NuGet settings page, which you can open by clicking NuGet Settings
in the NuGet window or by choosing in Rider settings Ctrl+Alt+S.
Manage NuGet caches
NuGet caches all downloaded packages to make them available when there is no internet connection and to prevent multiple downloads of the same package.
With Rider, you can view locations of NuGet caches and clear selected locations in the Folders tab of the NuGet window. Clearing NuGet caches is safe, it does not affect packages installed in your projects.
Edit NuGet configuration files
If necessary, you can also manually edit NuGet configuration files — NuGet.Config, packages.config, and *.nuspec. Most of the coding assistance features, including syntax validation, Code completion are there for you.

NuGet package manager console
The NuGet Package Manager Console (PMC) provides a PowerShell environment to manage NuGet packages through commands. You may want to use the PMC if you prefer the console experience over GUI or for advanced scenarios.
Enable the Rider PMC plugin
This functionality relies on the Rider PMC plugin, which is bundled and enabled in JetBrains Rider by default. If the relevant features are not available, make sure that you did not disable the plugin.
Press Ctrl+Alt+S to open settings and then select .
Find the Rider PMC plugin and click Enable.
Configure PowerShell
Press Ctrl+Alt+S to open settings and then select .
Choose whether to use PowerShell as a .NET tool or point at an existing PowerShell installation:
Use PowerShell as .NET tool
With this option selected, JetBrains Rider will validate the selected tool and offer to install, update, or restore it if it's invalid.
The Auto option prioritizes the local tool if available, falling back to the global tool. The minimal supported tool version is 7.0.4.
Use an existing PowerShell installation
Select this option to specify a custom path to an existing PowerShell executable on your machine. For example, on Windows, you can use the built-in Windows PowerShell.
No validation is performed for this option, so ensure the specified path is valid and the version is compatible. Version 5.1 or later is recommended.
Access Package Manager Console
The Package Manager Console can be accessed in two different ways:
As the PMC tab in the NuGet window.

As a predefined session in the Terminal window.

The NuGet window version provides an experience similar to Visual Studio, while the Terminal version offers integration with Rider's Terminal tool window.
Use Package Manager Console
The Package Manager Console allows you to execute PowerShell commands to manage NuGet packages. Common commands include:
Install-Package- Installs a package and its dependenciesUpdate-Package- Updates a package and its dependenciesUninstall-Package- Removes a packageGet-Package- Lists installed packagesFind-Package- Searches for packages from package sources
The Console also allows for automation and advanced scenarios that the GUI interface does not support. Here are a few common scenarios exclusive to the Console:
Mass updates with pattern Matching — While the GUI requires you to update all packages in the solution with one click, in the PMC, you can use the PowerShell logic to update only specific sets of packages (for example, all Microsoft packages) across the entire solution:
Get-Project -All | Update-Package -Id Microsoft.*Reinstall all packages — If your local bin or obj folders are corrupted or references are broken, you often need to address every package to rewrite the project file entries. In the PMC, you can do that with the following command:
Update-Package -ReinstallCustom scripting via $profile — You can create a PowerShell profile for your PMC (via $profile) to define custom shortcuts or complex cleanup scripts that run within the context of your open solution.
For example, you can createa custom command
Sync-MyPackagesthat uninstalls a specific conflicting package and installs a corporate-approved version across all projects in your solution.Ignore dependencies — Sometimes a package update tries to force a dependency version that breaks your build. The Console allows you to bypass the dependency check:
Install-Package <PackageName> -IgnoreDependencies
You can extend the PMC functionality using tools coming from NuGet packages. In the current version, you can use the EFCore Tools package that makes EFCore PowerShell commands such as Add-Migration, Update-Database, and Scaffold-DbContext available directly in the Console.
NuGet quick list
The most frequently used actions are available in the NuGet quick list — Ctrl+P, N or :
