Before you sign up for Web hosting and start building a website, you need to buy the domain name where visitors will find your site. Hundreds of different registrars sell domains, so first and foremost, know that domain names work the same no matter which registrar you use. You don't need to buy your domain from the same company that will host your site. Aside from picking a registrar -- and, of course, your site's name -- you also need to pick a top-level domain like .com or .org.
The way that competition is supposed to work between registries, is that lots of companies go to ICANN and say “We think we can reliably manage .com, and we think it would cost us [$5] per domain.” ICANN reviews these bids and awards the .com contract, which lasts for a fixed period of time, to whomever they deem best-suited to the job. In this time, other companies can think of ways to manage .com better/cheaper, and try and win the next contract. This, in theory, would provide an incentive for registries to innovate, a big part of which would be in lowering costs.
A handful of domains will have restrictions on them, which means you can only purchase them if you meet certain criteria or have authorization (some examples are .gov, .edu. and .mil). But most extensions are available to everyone. In fact, most country code Top Level Domains (ccTLDs) are available for anyone to purchase, even if you don’t reside in the country in question.
A great domain name is a concise, easy to type, and memorable URL that reflects your brand or your website’s subject matter. Avoid using hyphens, strings of numbers, or unnecessary words to make it easy for your visitors to remember and find your website. Remember: A great domain name is one that your visitors can type correctly on their first try.