Often, the hosting company you use will both register the domain name and host the site for you when you buy a plan.
Sometimes the problem with this is, if you ever want to switch hosting from one to another, it can be a real pain in the ass (as the domain will be tied to the first hosting place's system, often registered through some cheapo registrar that has terrible customer service.)
I have in the past registered domain names via networksolutions.com, although there are other places like register.com that might be cheaper.
So, I guess you have two ways of going with it... conveniently registering and hosting at the same place (often at a discount price), or registering on your own and hosting somewhere else (more work for you and probably paying more.)
-Terry