On a Virtual Private Server you have your website placed on a computer (The webserver), that has other websites on it - anywhere up to 350 or more. This has a number of down sides, such as being slower, less secure, as well as giving you less access to edit things on the server, such as installing & updating the system software. One the plus side however, it is much cheaper then going for a dedicated server, as well as being easier to administer.
On a Dedicated Server, you have the entire machine to yourself. This is fast, secure and you have full control. You can install any program your heart desires and update programs as often as you wish. This is a good choice for sites that get a lot of visitors, use a lot of system resources (through the use of CGI scripts), if you are holding very important data, or if you need special software that is not available on virtual servers. Unfortunatly, for a decent dedicated server, prices start at about $300 a month - you can get them cheaper if you shop around.
To sum it up, you need a dedicated server if ::
- Your site gets so many hits your Virtual Server account cannot handle it.
- You want to host many sites on the one server.
- You need a feature that is not offered on a Virtual Server.
- You require a high level of security.