Virtual servers are limited by the host-node that they exist on and in turn, their resources can only go so high before a limit is reached. While virtual does scale well, it is limited by the availability of resources on the host-node. On a host-node there are several virtual servers at the same time, so while your package may have set resources allocated you may sometimes experience issues although rare.
When using Dedicated hosting, your resources are yours and yours alone. There is no sharing of resources such as CPU time, bandwidth, or RAM. Dedicated servers can be constantly upgraded to larger allocations compared to a virtual server which allows for them continue improving. Plus, you can easily customize your package with specific CPU, RAM, disk space and bandwidth for your web hosting needs!