There are scads of DNS providers out there. Hosting providers almost always provide DNS service as well, but I prefer to have a separate provider, so it's easier to switch hosting.
My favorite DNS service is easyDNS. They have a pretty comprehensive service, and they now do .co.uk domains, although you can't use their web-based interface to do it. There are cheaper services, but Easy DNS are by no means a rip off. The UI is clean and easy to use, their service is rock-solid and fast. I also find them to be a straight-shooting type of company, they don't use dodgy practices to squeeze extra money out of you.
