At WitzEnd Consulting, we know what companies are best at domains, hosting, email and SSL certificates. We have decades of experience. So even if you are trying to build a website yourself, and just need an expert opinion on what registrars are best, you can count on us to give you the real scoop on what's good and what's not.
Our Current Top Recommendations as of 12/18;
The best pricing, strong and scalable hosting, and reliable 24/7 support. WitzEnd Consulting is a longtime reseller for GoDaddy Products. A solution for every budget. Email is provided by Office365.
Powerful hosting services and free basic SSL with your plan. Great tech support too! Bluehost is best for those who want better discounts for 2 and 3 year terms, and flexible email plans.
If you're looking for a feature-rich, affordable web host, 1&1 Hosting offers a wide array of packages, including shared, cloud, virtual private server (VPS), WordPress, and dedicated hosting. Good, solid technical support.
A consistent winner of PC Magazine's Editor's Choice, Hostgator is good for novice users and provides an excellent shared hosting experience. Uptime is Excellent and technical support is great.

Buying a Domain
There are plenty of different domain extensions to choose from. Some are reserved and can't be registered, like .edu and .gov. The rest can usually be filtered down to find the extension that best fits your business.
Newer extensions like .restaurant, .realestate, and so much more can put the right finish on your website and be much more memorable.
Domains can be purchased for a minimum of one year, and a maximum of 10 years. Most registrars will give you discounts on multiple-year terms, and often you can get the domain free for the first year if you purchase a year's hosting. Check with the different registrars to find out what current deals are running.
You may also wish to purchase Domain Privacy. When a domain is purchased, your information (name, address, phone, email) can become public via the WHOIS record, but if you purchase Domain Privacy, that information will be hidden. Expect to pay an average of about $7 to $10 per domain.

Purchasing a Hosting Plan
You need to have a hosting plan to build and place your website on, like a house needs a piece of land. Hosting fees vary according to the website needs, and typically start at around $7 a month for basic hosting.
Of course, the longer you pay for, the better the discount. One, two and three year terms are fairly common, and in some cases you can get a three-year term for the same cost as a one year term. (GoDaddy is known for their discounts).
The larger your website becomes, the more resources on your hosting plan are required. ("resources" refers to the storage & processing speed) It's not necessary to purchase the biggest plan in anticipation of the website growing, since it may take months before the site starts to need the extra resources. You can start with the basic plan and simply upgrade when the time is right. Your hosting company will let you know if you are starting to max out your resources.