Difference between a Content Managenent System and a web application framework

Hi all I have been googgling endlessly around and could not find the definitive answer to this question:
What is the difference between a Content Managenent System and a web application framework (in purpose, functionality and role).
I would like to know if it is indispensable to use the two when setting up a dynamic website and if that's the case, how do the two relate to each other in the system. Otherwise is it SUFFICIENT to use just one to set up a dynamic application?

I would like to build a dynamic website and I would like to know if the following logical steps are correct to achieve that:

1) Decide which framework to use (this was before I read about the CMS thing) along with the coding language.

2) Design the sit e (UML)

3) Write down the code according to the framework decided in 1)

4) If local tests are conclusive (including a local server for testing purposes on the same machine), look out for a web host and ship the site online.