In order to answer this question, it is important to have a working definition of cloud hosting. This is because the physical cloud server may not be noticeably different from a dedicated server. What makes them different is the way in which they are deployed and managed.
Even on a managed dedicated server, the customer is still required to develop or purchase his own web applications. In the cloud, the hosting provider will additionally offer software and/or the platform as a service, which the customer pays for on a subscription basis.
The major advantage of cloud hosting is that it is essentially hands off in every aspect. You are free to focus on using your cloud applications, while the hosting provider maintains, updates, and keeps them secure. The major disadvantage to this setup is that you often do not have the freedom and flexibility to customize your hosting the way you might want it.
With a dedicated server or VPS (virtual private server), you are the administrator, and you have full control. Even with a managed server, you can often still have the final say on what software gets installed and how your server is managed.
Basically, cloud hosting is better when you want to make use of web applications offered by a hosting provider and are not concerned with hosting and developing your own. If you can live with those restrictions and are willing to pay for the service, it may be a better option for you.