A domain name registration is simply reserving your website's name for a specified period of time. The two parties involved with a domain registration are generally the user who is registering the domain and the domain registrar. The domain registrant is the user who actually registers the domain name and the domain registrar is the company who helps that user with their domain registration.
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.

Technical contact. The technical contact manages the name servers of a domain name. The functions of a technical contact include assuring conformance of the configurations of the domain name with the requirements of the domain registry, maintaining the domain zone records, and providing continuous functionality of the name servers (that leads to the accessibility of the domain name).
Domain names disappear extremely fast. Many people claim that all the good domain names are gone. I doubt that — but it is probably true that most good domain names that are descriptive of products and services have been taken. If you want a domain name for your site, I suggest you act now, or face the anguish of having lost that name later. After all, US$10 (more or less) for a year's ownership of the name is rather cheap when you realise that you're securing a good name for your website.
Not every registrar sells every top-level domain, so if you want an uncommon TLD like .pizza, you might have to try a few registrars. Unusual TLDs often cost more than a standard .com address, but provide built-in memorability and give you more name options, since far fewer .pizza addresses are already taken. You can check name availability at any registrar that offers the TLD you want.
In order to register any domain, you must provide certain personal information that you may not wish to be publically searchable in the Whois database. Signing up for WhoisGuard is a great way to keep your registration data private. WhoisGuard acts as a "shield" for your searchable information, displaying the address, phone number, and email of the domain registrar (Namecheap, e.g.) instead of your own. Keep in mind that WhoisGuard is an optional security add-on that must be renewed separately when you renew your domain.