Domain names serve to identify Internet resources, such as computers, networks, and services, with a text-based label that is easier to memorize than the numerical addresses used in the Internet protocols. A domain name may represent entire collections of such resources or individual instances. Individual Internet host computers use domain names as host identifiers, also called host names. The term host name is also used for the leaf labels in the domain name system, usually without further subordinate domain name space. Host names appear as a component in Uniform Resource Locators (URLs) for Internet resources such as web sites (e.g., en.wikipedia.org).
My personal preference is to register the name directly with a domain name registrar rather than through my web host. I've heard stories, in the past, of less-than-reputable web hosts that registered the domain under their own name, making them the owner of the domain rather than you (although I don't know if such web hosts still exist today). Registering direct with a domain name registrar allows me to make sure that I am registered as the owner, the administrative and technical contacts. Being the owner is vital — if someone else places himself as the owner (such as your web host), he can always decide to charge you some exorbitant fee for the use of the name later, and there is little you can do. The various other contacts are less vital, but may still play important roles, depending on your registrar. For example, for some registrars, the administrative contact's approval is required before a domain name is transferred out of a web host (or at least, it used to be). If he/she cannot be contacted, the technical contact is used.
Getting a domain name involves registering the name you want with an organisation called ICANN through a domain name registrar. For example, if you choose a name like "example.com", you will have to go to a registrar, pay a registration fee that costs around US$10 to US$35 for that name. That will give you the right to the name for a year, and you will have to renew it annually for (usually) the same amount per annum.
SnapNames is a web domain name marketplace - meaning that they only deal specifically with domains that are currently owned by somebody else. They offer daily and premium auctions, private brokerage of domains, and buy-it-now listings for buying and selling domain names, including over 30 million domain names that aren't all, as you'll find on some services, exorbitant. They have over three million customers, including a significant number of small businesses, which is worth it.
It's good to decide early on if you want to have a brand domain or a keyword domain. The benefit of a brand domain is that your domain will most likely be considered as trustworthy, and immediately shows visitors that it's linked to your business or personal blog. A keyword domain, on the other hand, has the advantage that it will be better optimized for search engines, and therefore will get higher search results. In recent years, however, the drastic improvement in search results thanks to a keyword domain has begun to decrease.
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.