Getting the domain name is only half the battle; finding someone to host the site at reasonable cost while offering the features you either want or need is the hard part.
Some hosting companies say they give you a registered domain name free if you take out their XYZ hosting package. Obviously they have simply built the small cost of domain name registration into the hosting package itself.
There are lots of hosting companies out there and most of them offer the actual registration of your domain for very little cost. Try the banner for Hostway at the top of this page, or as Sir Radfordin suggests, many people find 1&1 more than adequate for their needs and they are pretty easy to get to grips with and relatively inexpensive.
Alternatives could include Areti at click here , Easily at click here , 2020 Media at click here and Webfusion at click here . There are loads more but the above should give you some idea of the variations of cost and features offered by different hosts.
Keep in mind that less expensive is not necessarily more cost efficient. I always suggest newcomers to the web (in terms of designing and having your site(s) hosted on registered domains) pay for a better service than go for the least expensive option. Tech support and general advice over the phone (without having to wait for your email to be answered) is worth its weight in gold until you get your head around the file systems used by hosts and how different publishing methods can affect them on your site root folder.
I purchase on behalf of clients are bought from Areti Internet Ltd - as linked by Taran above. My sites are also all hosted by them. They are a small but thoroughly professional company, and I've dealt with them for years.
There are no doubt other hosts that are just as good, and I keep meaning to try a few different ones. One day I'll have the time to shop around.