The great thing about Linux is that you didn't need fifty copies of every DLL
You left out a word. The great thing about Linux *Distributions* is that you didn't need fifty copies of every DLL. Distribution maintainers put a shitload of work into avoiding the kind of DLL hell that Windows suffered from. However that only works when you play within their environment. As soon as you start stepping outside of it, outside of their configuration, outside of their organised dependency tree, then things start to get ugly.
Linux isn't immune from DLL hell, quite the opposite. Many-a Linux distro have failed a distribution upgrade precisely because of incompatible libraries installed outside of the curated environment distro maintainers have setup, and this is all to frequently the result of someone wanting to be on the cutting edge, desperately installing Awesomething-2.0.0beta1 which depends on Criticallibrary-2.2.7beta1 only to find that Criticallibrary2.1.10-stable was the only allowable installed one on the system. Then someone force installs it all, and at the next distribution upgrade the entire system craps itself as Criticalibrary can't be updated to the latest version due to a conflict.
It's quite obtuse to think that Snap exists only because RedHat is trying to screw with standards. It's the same line of thinking that says Systemd exists only because of RedHat. The reality is Snap is just one of several attempts in parallel by multiple people to solve a very real problem. It's easy to look at Linux with rose coloured glasses on if you've never experienced the problem in question, but there's a reason people dedicate engineering resources to fixing it, and it's not because of NIH or because they hate users.