In my opinion, you should choose a hosting, that fits your needs.
If you are small business or you just want a blog, a small website then, you need shared hosting, which means your website/blog is shared with others on one server.
If you plan to grow a lot, expect a lot of traffic and you want a little bit more control then vps hosting.
In VPS hosting, one physical server is split into several logical, independent virtual servers - virtual machines. With this type of hosting, you have your own virtual machine, logically separate and independent.
You can freely configure it and install any desired operating system or software on it. With VPS hosting, the user is responsible for managing his service by paying for the resources he has previously requested.
Dedicated Hosting If you want full control over the entire server, which is a physical machine, providing many benefits. They are a little more sophisticated to manage and also more expensive than shared hosting.
When you have full and direct access to the server your web page is uploaded to, you can install any software you need, make changes to your operating system or programming language, and make configuration settings and create virtual machines for example, within the physical one.
For some applications, such as your company’s ERP or CRM systems or specialized software development, you will need exactly that level of control.
Cloud Hosting For dedicated and VPS servers there is a chance that you will reach their physical limits if your website generates enough traffic or your application is not optimized enough. We're talking about a real machine with real limitations - how much memory it can use, how much data it can store, and how many requests it can handle.
Here comes the need for a scalable service called cloud or cloud hosting. It can be found under various terms such as cloud, cloud based hosting, scalable cloud based hosting, hired time hosting or on request.