Ответ 1
Пакет NuGet.Core содержит официальный API для чтения метаданных пакета.
Чтобы прочитать информацию об одном файле .nupkg, используйте код, похожий на следующий.
var myPackage = new ZipPackage(@"C:\Path\to\MyPackage.1.0.0.nupkg");
Console.WriteLine("Id: {0}", myPackage.Id);
Console.WriteLine("Version: {0}", myPackage.Version);
Console.WriteLine(
"Assemblies: {0}",
myPackage.AssemblyReferences.Select(a => a.Name).ToArray());
Существуют также аналогичные классы для чтения источников пакетов (aka Feeds) и т.д.