Microsoft made the mistake of adding non-deterministic behaviour to MSI files, because without that the package format is pretty much everything I'd want out of a software packaging system.
I think companies wanted to stuff branding and ads into their installers, so MSI files fell out of use. Modern Windows seems to prefer msix and other weird UWP-based formats, but I don't think you can just install those.
What Windows is missing though, is a clean way to manage these MSI files. A reinstall or an uninstall shouldn't take twenty windows and four different "next" buttons to process. When Microsoft created the Microsoft Store, they neglected to also add a command line option for installation (you can manually install a package, but you'll need to do updates yourself from what I can tell). Just add a Powershell command like "MSStore-Install" and the entire ecosystem would be so much nicer to use!
I suppose this is what they're trying to do with WinGet, after forking AppGet and leaving the original project to die. For some reason they like to reinvent the wheel every time someone thinks of a new way to install binaries onto a computer.