ICANN.org is the authority you are thinking of. But the registering of domains is done through third parties.
I have used quite a few different registars in my time for establishing domains. Domain names are cheap no matter how you look at it. I personally now only use networksolutions.com. They are probably the largest, and I love there DNS tools.