Regression testing is used to ensure that previously working functionality continues to work following modifications to other parts of the system. The Wikipedia page on the subject does a decent job of explaining what it is.
One of the most significant advantages of unit tests is that they are automatically regression tests. Once those tests are written, they will be run whenever new functionality or current functionality is added or changed in the future. You don't have to write regression tests explicitly.
The goal of regression testing is to ensure that no new mistakes were introduced as a result of the previous faults being fixed.