Domains — your address
Your address on the web, e.g. clear-kove.co.za. You register it and renew it yearly so it stays yours.
Hosting — where files live
Hosting is where your site's files actually live and get served from. When someone visits, the host sends them your pages.
The domain is the address; hosting is the building the address points to. You need both.
DNS — the signpost
DNS is the phone book of the internet: it points your domain at your hosting so typing your address actually loads your site.
Key takeaway
Domain + Hosting + DNS = a website people can actually reach.