Registries and registrars usually charge an annual fee for the service of delegating a domain name to a user and providing a default set of name servers. Often, this transaction is termed a sale or lease of the domain name, and the registrant may sometimes be called an "owner", but no such legal relationship is actually associated with the transaction, only the exclusive right to use the domain name. More correctly, authorized users are known as "registrants" or as "domain holders".
Namecheap — This company provides .com domains for $10.69 (plus 18 cents) per year ($9.69 if you transfer from other registrars). Along with your domain, you get free email forwarding, free web redirection (where anyone going to your domain is automatically directed to another address of your choice), free domain name parking, etc. For the first year (or at least, at the time I checked their prices), you can also have their WhoisGuard (where your particulars are masked from public view) for free. They have a wide variety of domain name extensions available, including .net, .org, .biz, .info, .us, .co.uk, .co, .de, etc. You can use either a credit card or PayPal for your purchases.
While looking at domains, you might come across the name "ICANN" -- the Internet Corporation for Assigned Names and Numbers. This organization accredits some registrars that agree to a set of operational standards, but ICANN accreditation isn't required to sell domains, nor is it necessarily a sign of a company with good customer service. In fact, ICANN plays no role in the sale of many top-level domains, including country-specific domains.
Even when you register and pay for your domain name, you won't necessarily be able to use the name for several hours or even a few days. The domain must propagate, meaning that the official domain name registry must be updated with your website's Domain Name System information. That's something that occurs on the backend without any need of input from you.
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.