In a ideal world, VM's would work with all apps w/o issue.
But it isn't an ideal world, so I prefer to use "Bare Metal" for everything to avoid those weird app incompatibilities, bugs, & issues.
Current software is buggy enough, I don't need the VM to cause more issues on top of that.
It helps that I'm getting paid to get VMs and containers work and came to VMware in 1999 after a bit of VM370 envy.
The other motivator is that it's so extremely easy to just spin up a couple of VMs and then make them jump through hoops, and then try this and that if they keep falling flat on their faces.
Rebuilding a physical machine after a software installation has gone wrong can just be hours intead of seconds of reverting to the last snapshot, especially on big machines that take minutes to just reboot.
There is charm in little boxes, but increasingly I find there is charm in little boxes that can run a couple of VMs without breaking a sweat: there is a ton of capabilities in an Alder/Raptor-Lake or Ryzen 5800U/H based NUC today with NVMe storage: it's quite simply the equivalent of what big vSphere hosts used to have 15 years ago.
Actually, the VM abstractions make it a lot easier to setup most types of systems, unless you're tied to some odd piece of hardware say for industrial control. And then it makes them nicely mobile, even switching between AMD and Intel isn't an issue most of the time, unless you're trying to do live-migrations.
Even performance is rarely an issue, network and storage are either ok or you can do pass-through (that takes a bit of skill, but not more than learning about a new piece of hardware). Even GPUs have become easy, unless you're trying to game on them. For the CUDA stuff I'm doing, it's become a matter of ticking options.
VMs were invented in 1967 to solve 360/370 backward compatibility issues and to transport ancient software without changes onto newer hardware. They still perform that function just as credibly as the consolidation in my experience and I'm very glad Diane Green and Mendel Rosenblum found a way around Intel's VM boykott and used the 486SL's system management mode and some emulation tricks to bring true virtual machines to x86! I wasn't happy to own the better VAX in an 80386 because that was still a "mini", I wanted a mainframe and they delivered.
Of course Intel immediately retaliated and invalidated the majority of their patent portfolio by offereing VM hardware support and sponsoring Xen, but that's just because Intel is Intel.