When you register a domain name, you need to specify (typically) 2 machines which are the nameservers for your domain. These are the machines that are responsible for translating the domain name to the IP address which identifies your webserver.
Often (maybe that's "usually" these days) when you register a domain name, your registrar will "run the DNS" for you. That means that they have a few nameservers that you can use (usually for free) so that you don't have to find your own. You simply tell them what IP address to point to. (That would be the IP address of your webserver). To make things more complex, sometimes people call this "hosting your DNS" as opposed to hosting your website.
When you set up a webserver with some outfit, sometimes they will also offer to run DNS for you (for free or a fee). That means that you could tell your registrar that you don't want them to do DNS for you, but that you will be using other nameservers. This is probably a less common scenerio, but still a reasonable one. In this setup, the people who are hosting your website are also hosting your DNS.
The bottom line is that if you pay for a domain name from a registrar and for web space from a web host, that between those 2 agreements you can probably get DNS for free somewhere.
Some people that rent a dedicated machine for their webservers chose to do their own DNS. That's up to you, but it typically requires a bit more experience than you seem to posess.
Hope it helps.