Every website has a domain name and web hosting. Anyone who has a dedicated website will incur the cost of both for as long as the website is published. By "dedicated" I mean a website that is yours, that you own, not a free website, blog page, or web pages located on someone else's website.
A domain name is the website address of your website. So, for instance, for the website address https://www.google.com, the domain name is google.com. The .com or .net portion of the domain name is called the extension or the suffix. The most popular (and sought after) extension is .com. After .com, the most popular extensions are .net, .org (which is used primarily by non-profit organizations), and .biz (not recommended as it's sometimes used by scammy companies). There are many more extensions, mostly by country, but you should always try to get .com. In 2014 new domain extensions were released for different types of websites. So instead of .com you could get, say, .builders, .cleaning, .florist, .contractors, .plumbing, .diamonds, and hundreds more. However, these domain extensions never caught on, so I recommend against using them.
Domain names are registered with a domain name "registrar" (like GoDaddy, Network Solutions, etc.). The registrar often handles web hosting as well, so it's usually best to use the same company for your domain name and web hosting. You can go directly with a company like GoDaddy, but if your web designer also handles domain names and web hosting, it's best to have your web designer set up your domain name (as long as you are the "registrant", meaning you are the contact for the domain name, not your web designer... this part is very important).
Domain costs vary depending on the company you use and how long you register the domain name for. A longer registration period often means a lower price per year. You can register and pre-pay for a domain name on a yearly basis, for one year, or up to ten years. It's best to go with a longer period, since it costs less in the long run as you'll often be locked in to a lower introductory rate for the full period. Plus if you register for a shorter period and you forget to renew, you could lose the domain name and someone else can buy it.
In order to appear on the internet, your website's files must reside somewhere other than a personal computer. So they reside on web servers, which are very large, super fast computers with terabytes of memory and space, much more than most people have available in their home or office computers. Web hosting is basically the renting of space on these servers, and the servers "host" your web files.
Web hosting is usually done through a web hosting company (like GoDaddy), which is often the same company that hosts your domain name. Hosting is usually prepaid for a year or more, up to ten years, and the cost varies. As with domain names, you often pay less per year if you prepay for a longer period of time. If you forget to renew, the web hosting company will remove your files from their server and your website will no longer appear online. However, if you have copies of your website files (which your web designer should have), once you re-purchase web hosting you can re-upload the files to those servers and your website will be live again as long as you still have your domain name.