Cloud hosting is a hosting platform where you can easily scale your website out and upgrade the needed ram cpu etc and other resources without having to change servers.
You can upgrade the needed server specs with just a click of the mouse and pay for more resources when needed.
With cloud hosting your website will be hosted on many different servers so if there's a failure with one server then your website will still be online.
Cloud hosting is great for a large website that gets a lot of traffic such as 4,000 or even 1 million visitors or more per day.
Shared web hosting is hosting where you share the server with many people and have limited resources.
Shared hosting is good for most small websites and blogs but once you start getting 3,000 or more daily unique visitors you should move over to cloud hosting so you can easily scale up and have many resources to prevent website down time.