Solar charge controllers have many functions, some more advanced than others. However they all have a couple of functions that are essential in a DC battery solar system.
A solar charge controller will monitor the power from the panel into the battery. For example, if the battery is full and the day is sunny, the controller will stop power from being forced into the battery which may cause damage.
When a solar charge controller is used it is possible to leave connected even when charging from a hookup, generator, engine or other charging device. Once fitted it will self regulate and protect.
More advanced charge controllers will learn the battery type and performance and increase efficiency over time.