In my opinion, having a VPS is much better than shared hosting because you have a lot more control over the configuration, and you are sharing hardware with a lot fewer people. Having said that, there is a BIG learning curve, and I have found that there isn't much in the way of step-by-step guidance out there. Unless your chosen host provides such tutorials (after you become a customer, of course), you can expect to be spending long hours hunting down the answers to the many questions you will have.
Even with a managed VPS, where the host sets it up for you and installs cPanel/WHM, PHP, MySQL, etc., you still need to do a lot on your own, such as:
- creating/managing nameservers
- adding DNS zones
- creating hosting packages for your sites (like how much storage, bandwidth, email accounts, etc. will be allowed for each of your sites)
- securing the VPS
- learning how to use SSH, SFTP, etc.
- editing your main php.ini (assuming you've got a Linux server) file, if necessary, using PuTTY
If you are willing to put forth the time and effort required to get your sites fully operational on a VPS, then I highly recommend that you go this route. I used both shared and reseller hosting for years before I made the switch to VPS, and even though the VPS was challenging at first, there's no way I'd ever go back to shared hosting.