Package Management System
NuGet is a package management system for .NET projects. It's been around from 2010 and it was born from collaboration between developers and folks in open source community.
History of NuGet.
Almost all software has depedencies. This is code that you probably didn't write yourself but you want to use in your application.
In fact, nowadays, in order to write a software application, we only need to write a small percentage of the total code the applications need to run.
A package management system is responsible for managing all of these packages and making it easy for developer to both upload and download packages. For .NET is NuGet.