A Content Management System (CMS) is a set of tools that allows you to make changes to your website even if you have little knowledge of technical issues, such as HTML. Although any tool that lets you administer content on your website, such as news, events, etc could be called a CMS, many people generally mean the ability to add/edit/remove pages when they say "CMS". Wherever HTML knowledge would be needed a CMS will often provide a What-You-See-Is-What-You-Get style tool that will worry about the web formatting for you. These tools will often look similar to word processing software.
Why do I want one?
CMS's are good to have because they allow you make changes to your website without you needing to get your local nerd involved in helping you. The ability to be able to add/edit/remove pages is especially helpful in this regard, because you have lots of flexibility to make alterations to your website.
Will a CMS Let Me Edit Any Word Anywhere on the Website?
Yes, and no. There are CMS's, such as WordPress, which allow you to edit almost anything, including your core template, without leaving the CMS. However this ability is mostly a technicality, as you'll quickly get into things where a very advanced knowledge set is needed to confidently make any alterations. For all intents and purposes the answer is no. Custom CMS Developers, like Webteam can provide you the ability to edit certain parts of the overall template, but it's generally specific things by request only as often a more specialized tool is wise, or needed.
What's a 'More Specialized Tool'?
Sometimes the task at hand calls for a tool that is crafted specifically for that task. For example, an event calendar. You could just use your page creation tool to make a page called "Event Calendar" and then format the content of the page into a list of events. As time passes you could add new events, remove old ones, and each time make sure everything is formatted as you want. However, a tool that lets you add/edit/remove one event at a time, say by having separate boxes for choosing the date, and giving it a name and description, would probably be a better way to go. You don't have to worry about formatting the events every time, and such a tool could automatically hide old events, allow people to click on an event title for more details on the event, or whatever you require.