I have been in web development since 2003, i have hosted more than 100 sites , Hosting your site is simple but keeping it live is difficult,Earlier when started developing sites, We had only few options and we were not bothered about mobile, since we had very limited options , Our sites used to load faster with little effort. And there were only few hosting options.
Now things have changed site speed and uptime matters a lot , There are thousands of hosting servers , And many affiliates/partners that sell hosting space for some commission. But not all of them are good ,When you start filtering , you will be left with only few options.
First Thing First, Analyse your requirement , What you really need ? how much space is enough for you ? how many visitors will you have in coming years? What platform are you looking for ? Linux ? Windows? Few sites require windows server as they have used .net where as others can be hosted on any of them.
Linux server provides better security and have more friendly cpanel so if you can host your site on any server than best thing to do is go for linux server. Similarly if you are just testing your site then you can choose some cheap server . You can find more tutorials on linux since linux server are more popular and other.
Not all hosting provider has both linux and windows , Neither those hosting provider that provide both have good service for both kind of servers. Some hosting provider have better windows server where as some have better linux server. Now second thing that comes is type of your site , If your site is on wordpress focus on hosting provider with best wordpress hosting , similarly if your site is an e-commerce site than better go with a Dedicated server , which can hold lot of CPU usage or/and traffic.
Never go with less popular Hosting provider
If you are serious about your site then never choose a random server / less popular server, Though you can save a lot of money by this but at the end of the day , your site will have no value , Less popular servers may not have good support which is very important for a site to function properly. Secondly they may host your site on a blocked IP which will affect your site badly , Your site can never come up in google. For example http://www.siliconhouse.net/ , This server i chose to save some bucks but i ended up leaving it completely because of their poor service, if your site is down it will remain down for week, though they claim too many things, In fact they could be just a reseller or a partner.
Based on different requirements , i have made a list of best Hosting providers
Best WordPress hosting Sites