A VPS runs its own copy of an operating system (OS), and customers may have superuser-level access to that operating system instance, so they can install almost any software that runs on that OS. For many purposes they are functionally equivalent to a dedicated physical server, and being software-defined, are able to be much more easily created and configured. They are priced much lower than an equivalent physical server. However, as they share the underlying physical hardware with other VPSes, performance may be lower, depending on the workload of any other executing virtual machines.
As you can see, a VPS can be the perfect middle ground for many – enough flexibility and resources for those who need more access or control than on a shared server but without the cost of a dedicated server. If you need root access, you can’t get that on a shared server, but you can get it on a VPS. If your site experiences unpredictable swings memory usage, and your host provides it, then the presence of burstable memory will be attractive. And, if you’re a fan of customization, then the fact that you can customize server-level software such as PHP, MySQL, and Apache will perk your interest. In short, choosing a VPS will allow you to have many of the same characteristics of a dedicated server but in a more affordable and manageable package.