A CMS stands for Content Management System. This is a software application that enables users to create, manage, and publish digital content, typically for websites. A CMS typically provides an intuitive user interface that enables non-technical users to create and publish content, as well as manage site features like menus, page layouts, and media.
These systems, like Drupal, Cascade Server, Wordpress, and similar ones, were developed to make it easier to manage content and web pages through a web browser and go away from the early web development days of having one file per webpage.
Traditional websites built with applications like Dreamweaver and Adobe Contribute, and "static" HTML were called static sites and in the most basic form, had a folder on a computer that stored folders and files available to the web through a browser. https://en.wikipedia.org/wiki/Static_web_page To build out a navigation on www.example.com for example of a section of the site, let's discuss example.com/about/home-page.html and about/second-page.html. The static site you would create a folder called about, then add two HTML formatted files, called home-page.html and second-page.html and save them on the web server computer. Then when accessed the server would just send your browser the files. Works great until you have 7,000 html files that don't have the right branding or need updating. The system has no login through your browser as well, forcing you to FTP up your files, to folders you have access to.
In our CMS based systems, there is no longer an architecture described above, there are no more folders or traditional html files. All traffic is routed through a series of files on the content management system, then content to show up in place of a real file is pulled from a database attached to the content management system and your browser displays it at the URL you provided. So, for example if we had about/home-page as a URL on our site, you would be visiting the content management system at the index.php file, which then goes and asks the database for any information on a request for a page that has a url defined as about/home-page. It doesn't have a specific file, and then sends back to you what information has been stored for that file.
Although more complex to determine what should show and that this information needs to travel through the CMS code and theme to look like you want, the data is removed from the theme look / feel. This allows you to rebrand your site without a large amount of manual work, saving cost and time. It's also using the CMS and fields that it stores in the database to give you a way to login, update and add content and code to a website without the use of a FTP system, and creating a way to keep all information in centralized content storage and file storage areas. Before you could have stored your images and files anywhere, and now in the CMS you'll have them in one location keeping them organized.