Shared hosting plans are best for small to medium websites without too much traffic. Shared hosting means that the server hosts more than one website, each using the same IP address. All the websites on the server will use the same resources for serving the data. This will mean less reliable performance and security than on a dedicated server. If the hosting company overloads a single server with too many sites to save money, performance and speed can drop noticeably.
Virtual Private Servers are a half way between shared and dedicated hosting. You will pay to have a 'virtual computer' created on a server. Like a dedicated plan you will receive more power and control over the software on your server, including a dedicated IP address and the capability to host unlimited domains. But like a shared server your virtual server will be sharing resources with other virtual servers.