Installing NuGet client tools


Looking to install a package? See Quickstart - Use a package.

There are two primary tools available to help you build, publish and consume NuGet packages:

  1. The NuGet CLI is the command-line utility for Windows that provides all NuGet capabilities; it can also be run on Mac OSX and Linux using Mono, or through the .NET Core CLI (dotnet).
  2. The NuGet Package Manager in Visual Studio (Windows only) is a GUI tool for managing packages and includes a PowerShell console through which you can use certain NuGet commands directly within Visual Studio. The Package Manager UI and Console are both included with Visual Studio (on Windows) 2012 and later and can be installed manually for earlier versions.

    With Visual Studio for Mac, NuGet capabilities are built in directly. See Including a NuGet package in your project for a walkthrough.

    Visual Studio Code at present does not have any built-in NuGet support. Use the NuGet CLI or the dotnet CLI.

The NuGet CLI and Package Manager both support the following operations:

  • Search packages
  • Install packages
  • Update packages
  • Uninstall packages
  • Restore packages (UI only in the Package Manager)
  • Manage NuGet sources

The following capabilities are supported only in the NuGet CLI:

  • Manage packages ( or private feed)
  • Create packages
  • Publish packages
  • Manage Nuget.Config
  • Manage the NuGet cache
  • Replicating a package


Another good tool is the NuGet Package Explorer, an open-source, stand-alone tool to visually explore, create, and edit NuGet packages. It's very helpful, for example, to make experimental changes to a package structure without having to rebuild the package each time. The cross-platform .NET Core CLI toolchain, used for developing .NET Core applications, supports several NuGet commands, such as delete, locals, push, pack, and restore.


The NuGet command-line interface provides access to all NuGet capabilities, and can be run on Windows, Mac OSX, and Linux as described in the following sections.


Direct download:

  1. On Mac and Linux, install Mono 4.4.2 or later.
  2. Visit and select the version of NuGet you want.
  3. Each download is the nuget.exe file directly. Instruct your browser to save the file to a folder of your choice. The file is not an installer; running it from the browser won't show anything.
  4. Add the folder where you placed nuget.exe to your PATH environment variable to use the CLI tool from anywhere.


With NuGet 1.4+, you can use nuget update -self to update your existing nuget.exe to the latest version.

Other methods:

  • Chocolatey: Install the NuGet.CommandLine Chocolatey package using the Chocolatey client.

    choco install nuget.commandline
  • Visual Studio: Install the NuGet.CommandLine package from the Package Manager Console in Visual Studio.


    For NuGet 2.x users: Because of breaking changes introduced in NuGet 3.2, points to the latest stable NuGet 2.x release to prevent continuous integration systems from potentially breaking.

Mac OSX and Linux

On Mac OSX and Linux, there are two ways to run the NuGet CLI:

  • Install the .NET Core SDK, which includes the core NuGet capabilities. Downloads are also listed on If you need fuller capabilities, then use the second option below to use nuget.exe with Mono.

  • Install Mono and then use the nuget.exe command-line executable for Windows (version 3.2 and later) from Running NuGet on Mono is subject to the following limitations:

    • Commands tested to work:

      • config
      • delete
      • help
      • install
      • list
      • push
      • setApiKey
      • sources
      • spec
    • Partially-working commands:

      • pack: works with .nuspec files but not with project files.
      • restore: works with packages.config and project.json files but not with solution (.sln) files.
    • Commands that do not work:

      • update

NuGet Package Manager in Visual Studio

The NuGet Package Manager is included in every edition of Visual Studio on Windows, 2012 and later. It includes the Package Manager UI (reference), and the Package Manager Console through which you can access tools that come with certain packages (reference).

The Visual Studio 2017 installer includes the NuGet Package Manager with any workload that employs .NET. To install separately, or to verify that the Package Manager is installed, run the Visual Studio 2017 installer and check the option under Individual Components > Code tools > NuGet package manager.


The console requires PowerShell 2.0, which will already be installed on Windows 7 or higher and Windows Server 2008 R2 or higher.

Package Manager Console commands also work only within Visual Studio on Windows. Use the NuGet CLI outside of that environment, including with Visual Studio for Mac and Visual Studio Code.

Package Manager installation for Visual Studio 2010 and earlier

These steps are not necessary for Visual Studio 2012 and later, which already include the Package Manager.

  1. In Visual Studio 2010 and earlier, click Tools > Extension and Updates.
  2. Navigate to Online, then search for "NuGet Package Manager for Visual Studio" and click Download.
  3. In the Installer dialog box, click Install.
  4. When installation is complete, restart Visual Studio.


If you're unable to use the Extensions and Updates dialog in Visual Studio (for example, its blocked by a proxy), you can download extensions for Visual Studio 2013 and 2015 directly at

Updating the Package Manager

For Visual Studio 2015 Update 2 and later, the Package Manager is automatically updated to the latest stable release.

For Visual Studio 2015 Update 1 and earlier, select the Tools > Extensions and Updates command and click on the Updates tab to see if a new version of the Package Manager is available.

NuGet previews

If you'd like to preview upcoming NuGet features, install the Visual Studio 2017 Preview, which works side-by-side with stable releases of Visual Studio.

Note that the previous NuGet Beta Channel ( for Visual Studio 2015 is no longer used.

To report problems with any release of NuGet or to share ideas, open an issue on the NuGet GitHub repository.