Anyone can buy a domain name. To do so, you visit a domain name registrar, such as GoDaddy or Namecheap, key in the domain you want to buy, and pay a fee. You can't buy just any domain, of course—only one that isn't already registered by another person or business and that bears a valid domain suffix. In general, you'll want to buy something that is catchy and short so that it's both easy for people to remember, and easy for them to type in—like "PCMag," for example. That good search engine optimization (SEO) and it's also common sense. You might also want to do some research on key terms for your business. If you can get a good one into your site's name, that's all the better, from an SEO perspective.
Sedo is where I bought my domain - over Escrow - and is a global marketplace to buy, sell, and park domain names. They've over 18 million domain names for sale, but the big part is that they're a huge, well-respected company. This may not be important if you're spending $150 on a domain, but in a $15,000+ purchase - which happens in many cases - you will be potentially buying from a foreign entity, that you don't know, and many of them will suggest an escrow payment. This means you put the money in an account owned by a third party that will hold it and only pass it on once the domain has been transferred over into their name (which in this case is what Sedo does). This can be quite disconcerting - but Sedo is well-known and has done many, many deals - and the process is about as full of hand-holding as handing tens or hundreds of thousands of dollars for a domain name can be.
Your domain name is how visitors easily find you online. It is often the first step in getting your website started because it is like establishing your website’s street address on the internet. If you did not have a domain name, you would have to give out your IP address to everyone who wanted to visit your website, which would get confusing and be easily forgotten.
Domain names can be used in a number of ways. Direct visitors to your website’s home page or use complementary domains to send them to specific areas of your website ( e.g. yourcompany.jobs for a careers page). Or, forward a custom domain to an existing social media account, like your Twitter profile or Periscope channel. With a domain name you can even set up custom email addresses like email@example.com, which can be used to conduct business or communicate with your followers. More.