I know we have this debate about every two weeks, but I just wanted to put in a plug for DomainMonger.com. I've registered a half dozen domains through them. They're fast (the domain will be available in about 24 hours), professional (their site has great account management tools), and, yes, cheap -- $17 for one year, but cheaper if you register for extra years at a time (you generally save $1/year). There are some sites that are a few dollars cheaper, but there are also lots of horror stories about registrars who don't know what you're doing.
And always be careful to see whether or not you actually OWN the domain name you're registering. With DomainMonger you do, and it's very easy to transfer ownership between people.
(And for the record: No, I don't work with or for these people.)