Difference Between Shared, Dedicated , cloud and VPS hostings

So hear we go

Shared hosting :
In shared hosting your website being hosted shared space and bandwidth with other websites who are also using shared hosting plan.
Basically your website is sharing server resources with different websites.
They say its unlimited badwidth but the badwidth is shared and and if one website has peak loads, then other websites that are hosted on the server suffer and become slow.
Good for HTML sites. Cheapest of all hosting plans

Dedicated Hosting :

You pay a lot more in dedicated hosting. You have the server for yourself. Good if you are hosting multiple sites and the sites have high traffic and need more RAM. Not easily scalable.

Virtual Private server (VPS) hosting:

Lets put it this way. Your website is hosted on a virtual instance of a powerfull server. When ever you need more resources, you can upgrade your hosting plan. Costlier than shared hosting. It differes from dedicated hosting in that, you only busy resources(band width, RAM) when you need.
In dedicated hosting you have server for yourself and sometimes pay more even when you don’t need that much resources.

Cloud Hosting:
Your website is not physically hosted on any one specific server. The resources are shared across servers. You can increase / decrease the resources you need by choosing the required plan based on your site performance.
It differs from VPS hosting in that it is not physically hosted on any specific server.
VPS is hosted on a physical server. But both are easily scalable.