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.
A dedicated server is best suited to anyone looking to build complex websites that need to look after hundreds of users in a no-compromise environment. (Think Amazon.) It’s like having your own computer: you don’t have to share your space, power or resources with anyone else. Dedicated servers are usually the fastest and most powerful choices available, though some of the high-end VPS options can give the lower performing dedicated servers a run for their money – so check the specs.