Pros: All features needed for a website, cheapest form of hosting.
Cons: Shared resources mean that if any of other website on the same machine starts using more resources or getting heavier traffic, then your site will slow down.
Who is it for: All startups and all websites not expecting high traffic at least in the beginning of the operation.
Pros: Cheaper than other types of hosting, privacy is protected as you run your own file-system on the server for your web site.
Cons: Limited usable resources for CPU and RAM (shared with other web sites)
Who is for: Web sites that don't have huge traffic or early startups.
Pros: Significantly faster serving of the website, all resources of the server are yours to use.
Cons: Much more expensive than shared hosting.
Who is it for: Successful websites with professional levels of traffic, companies having several websites.
Pros: Same as dedicated, you don't need to know anything about your server system.
Cons: You cannot edit your php.ini files and only hosting people can access any system file.
Who is it for: Successful web sites with professional levels of traffic, companies having several websites that don't need or want to have access to system files.
Pros: No concerns about server components or high-speed access to Internet needed for hosting
Cons: More expensive than dedicated, usually includes no support for the server unless otherwise arranged with the hosting company
Who is it for: Very successful web sites with needs for their own equipment.
Pros: Greater reliability than any other hosting option, utility-type billing (you pay only what you use)
Cons: Security and privacy of data
Who is for: Big companies