- Home
- Package Managers
- NuGet
NuGet
What it is
NuGet is the package manager for .NET, providing tools to create and consume packages and the NuGet Gallery as a central repository. Packages use the .nupkg or .snupkg formats; a .nupkg ZIP can contain compiled code, related files and a manifest. NuGet resolves dependency graphs and records package identifiers and versions so builds can restore dependencies across machines and build servers. Packages may be hosted in private cloud locations, private networks or local file systems. Visual Studio can search, install, uninstall and update packages, while the dotnet CLI and nuget.exe support package workflows. NuGet supports PackageReference and packages.config, and restore can check configured vulnerability sources and report warnings. The dotnet CLI runs on Windows, macOS and Linux; nuget.exe runs on Windows and can run on macOS and Linux with Mono, with limitations. NuGet is free, and the Gallery code is open source under Apache 2.0. Packages can be digitally signed, with nuget.org repository-signing uploads.
For and against
For
- Free package manager for .NET
- Resolves dependencies across build environments
- Supports private package feeds
- Integrates with Visual Studio and dotnet CLI
- Restore can report vulnerability warnings
Against
- nuget.exe has limitations outside Windows
- Published packages generally cannot be deleted
- Uploads are limited to 250 MB
The verdict
NuGet provides package creation, hosting, dependency resolution and security checks across common .NET tooling. Its private-feed and signing options support controlled distribution, while package deletion and size limits matter during publishing.
Who it suits
NuGet suits .NET library creators and consumers who need package creation, hosting, dependency restoration and project integration. It supports workflows across Windows, macOS and Linux through its listed tools.
On the record
- Audit data source
- NuGet.org’s vulnerability database uses the GitHub Advisory Database, and NuGet.org provides a vulnerability-data-only service index.learn.microsoft.com · read 2 Oct 2026
- Build integrations
- Package restore can be run with NuGet, the dotnet CLI, MSBuild, Visual Studio, or Azure Pipelines and Azure DevOps Server.learn.microsoft.com · read 3 Oct 2026
- CLI tools
- The dotnet CLI and nuget.exe support package creation and consumption; the dotnet CLI is available for .NET Core, .NET Standard, and SDK-style projects targeting .NET Framework.learn.microsoft.com · read 2 Oct 2026
- Deletion policy
- NuGet.org generally does not support deleting published packages.learn.microsoft.com · read 3 Oct 2026
- Dependency management
- NuGet resolves package dependency graphs and records package identifiers and versions so dependencies can be restored across machines and build servers.learn.microsoft.com · read 2 Oct 2026
- Dependency resolution
- Yeslearn.microsoft.com · read 22 Sep 2026
- Development tools
- NuGet capabilities are available through the dotnet CLI, nuget.exe, Visual Studio, and Visual Studio Code extensions.learn.microsoft.com · read 3 Oct 2026
- Downloads
- The downloads page lists a Windows x86 nuget.exe command-line distribution and a Visual Studio 2015 VSIX; it says NuGet 4.x is included with Visual Studio 2017.nuget.org · read 2 Oct 2026
- Gallery license
- The NuGet Gallery is open-source software licensed under Apache 2.0, and the project welcomes community contributions.nuget.org · read 2 Oct 2026
- Intended users
- NuGet provides tools and package hosting for .NET library creators and consumers.learn.microsoft.com · read 3 Oct 2026
- Lockfile support
- Yeslearn.microsoft.com · read 22 Sep 2026
- Offline installation
- Yeslearn.microsoft.com · read 22 Sep 2026
- Open source
- The NuGet Gallery code is licensed under Apache 2.0, and the project welcomes community contributions.nuget.org · read 3 Oct 2026
- Package contents
- A NuGet package is a .nupkg ZIP file that can contain compiled code, related files, and a descriptive manifest.learn.microsoft.com · read 2 Oct 2026
- Package formats
- .nupkg,.snupkglearn.microsoft.com · read 22 Sep 2026
- Package gallery
- The NuGet Gallery is the central package repository used by package authors and consumers.nuget.org · read 3 Oct 2026
- Package management formats
- NuGet supports PackageReference and packages.config, and PackageReference is required for .NET SDK-style projects.learn.microsoft.com · read 2 Oct 2026
- Package signatures
- NuGet packages can be digitally signed to help verify package integrity and origin, and nuget.org automatically repository-signs uploaded packages.learn.microsoft.com · read 3 Oct 2026