Dependency management in .NET is not as good as let's say, Java, Python, Ruby, node.js.
Setting up your project to use Maven, pip, gems or npm respectively is very easy. I have tried nuget, but it is not as nearly as easy to use or reason about as other systems.
What exactly is wrong with NuGet? It's very simple, I think you just didn't give it a chance
For example a month ago Facebook broke .net's built in social login, all installed with NuGet, so I ran a single command and it was fixed.
If you're talking about front end, NuGet can handle it, or the recent versions of VS have a built in task runner that you can easily setup to run Gulp, Grunt, Yarn, Bower, whatever, if you so desire on build/debug/etc.
There are things to hate about the .Net ecosystem (TFS, I'm looking at you), but NuGet ain't one of them.
So far what I have seen with .NET project files is that: people modify them, VS generates code into those files, and they contain a lot of stuff. As a result, they're very painful to manage when trying to troubleshoot issues. Then, because the project files get modified all the time it's a constant source of conflicts in version control.
If project files get modified all the time then either you're constantly moving, adding, or removing files from the project, or constantly changing configurations and build settings. Neither should really happen constantly.