As stated by a lot of people here, there is no "Best" provider, only what's best for you… (A lot of providers say that in every thread related to this question).
Personally I check the reviews… So google their name. Search them on Webhostingtalk.com. Check reviewhell.com
After check the whois, is it private or public, if it's a private whois just give them the red cross or cross them out off your list. (Why? They expect you to give them your address they should show theirs.)
This might not effect you, but if they are using CloudFlare DNS, I mark them off my list… A provider should trust their own DNS servers they are giving you. Some use the excuse they like their CDN or for DDos Protection, I don't believe that rubbish because MaxCDN, BlackLotus do the same and they could even let you use their BL network.
The next is Price, do they look like they can afford to stay in business, if they charge it too cheap you need to ask yourself "Are they overselling?" If they look like they might be give them the red line threw their name on your list. Overselling can mean bad connectivity and slowness.
Ok after you've picked the package, price and providers, contact their sales team. Do they reply in a timely matter (In opening hours)? Do they know what they are talking about? If they do put a + for each item next to their name.
After all them checks, choose the best one suitable for you.