Every time you do a build, by default NuGet check and possibly download missing packages.
As stated in the output windows when making a build, if you want “To prevent NuGet from restoring packages during build, open the Visual Studio Options dialog, click on the Package Manager node and uncheck ‘Allow NuGet to download missing packages during build.’ “.
Because this check takes some time, during normal coding and rebuilding, you don’t need necessarily to have that default option set … and may be you want to disable it: obviously, the first time you build a project downloaded from a repository, you need to have that option enabled to make it compile correctly!
You can modify that option going to Tools -> NuGet Package Manager and then unchecking “Automatically check for missing packages during build in Visual Studio” (alternatively, you can go to Tools -> Options and then select the NuGet Package Manager section).
On the contrary, if your missing packages are not downloaded during a build, may be you have that option unchecked (by default it is checked but you could have unchecked it and you don’t remember …. 😉