Shared hosting is ideal if you have little or no technical experience and want low cost hosting solutions, shard hosing is managed hosting all the time, you don’t need to worry about the hardware or software upgrades, there is no need to monitor your websites on the moment, but the bad thing about shared hosting is that you don’t have full control over your resources i.e. if you want to enable PHP safe mode you will not be able to do it all the time, also you cannot install extra software to enhance your web applications. The other bad thing with shared hosting that you are sharing the post with hundreds of people sometimes, some of them will try to do silly stuff that might crash the server or consume high percentage of its resources leaving it working very slow, no mention that we are in the web 2.0 era with a lot of social media websites that can send thousands of visitors to a single website in few minutes (a kind of DOS attack but legitimate one)

Dedicated hosting comes to fill the gap, with dedicated server you have full control over your resources both hardware and software you can set them up to match your needs. Dedicated hosting has also two kind; managed dedicated hosting and self managed dedicated hosting, with both of them you need to expect more work from your end, you need at least to notify your hosting provider about any issue in case you have a managed hosting plan if not you need to get fully involved in the process of restoring your server to work again without any third party interfere.

Finally it is not hard to decide which one you need, just make sure you are totally familiar with the resource that your website need, your technical knowledge and the amount of down time your website can handle without significant loss and mover from there.