Just to put this in perspective, virtualization software has been around almost as long as modern computers have. It’s not new, unstable, experimental, and/or black magic. You’ll need specialized hardware if you want to do something like passing a graphics card to a VM, but a basic VM can be run on just about anything successfully (even ARM processors).
It’s good to have more cores on your CPU, a good amount of extra space on your hard drive, and as Alen said, more RAM. When you set up the VM you’ll choose how many cores/threads/ RAM/ disk space to provision for it, and that will be your “virtual” hardware. You’ll need at least as much as required by whatever OS you’re going to run, and more is better. But Linux requires hardly anything.
This is not an answer to your question, but it’s a fun read if you want an idea of what can be done with VMs.