A CSS framework are a collection of files that provide defaults for you to customize or build upon when your writing your stylesheets. Whether its typography or page layout widths or grids/columns, the main point of a framework is to cut down on development time by providing you a base that you can build upon and customize.
I can't say for sure why you may want to use one, that really depends on the project at hand. One argument can be that you can just run with it without having to define and test your own styles. Also, a framework can eliminate a lot of cross browser issues that may arise and give you consistency across a wide range of browsers.