A couple years ago we converted most of our servers to virtual machines. Most of our servers were either running idle most of the time but needed, or not using a lot of CPU/RAM (license servers, AD servers, etc.). We were able to reduce the number of physical systems running. This lowers chance of hardware failure as well as the energy cost to run it.
Legacy software that requires very specific operating systems and cannot be migrated to more modern operating systems can be thrown to a VM. The old software can then outlive its physical system, and it's easier to secure since there are additional layers between the VM and the network.
One thing most virtualization software does is let you take snapshots of VMs. If a system later becomes infected or otherwise experiences some sort of software failure, you can revert to the earlier snapshot and recover very quickly from it. This lowers costs and provides some inbuilt protection against unexpected events.
If you provision hardware to run more VMs than what you need currently, then provisioning new servers for whatever purpose is needed is quick and easy.
Since VMs are not tied to any specific hardware, its very easy to move them around should the need arise. So, if you outgrow your physical hardware, migrating it to more powerful hardware is easy and won't disrupt anything installed within. With the proper hardware you can do this without powering off any VMs. Things like live failover and such are also possible.