Retesting is done to make sure that bug is fixed and failed functionality is working fine or not, This is kind of verification method followed in testing field for the fixed bugs. Whereas, Regression is re-execution of the test cases for unchanged part to see that unchanged functionality is working fine are not. Retesting is a planned testing while Regression is know as the generic testing. Retesting is only done for failed Test cases while Regression is done for passed test cases. We should always keep this in mind, Re-testing has higher priority than the regression testing. But in bigger projects Retesting and Regression is done in parallel effort.But never forget importance of both in the success of the project.