Shared hosting means sharing a server – and its resources – with other sites. That's bandwidth, storage… the lot.
Vps Hosting creates a virtual environment that imitates a dedicated server (where you get a server, and all its resources, to yourself), but within a shared hosting environment.