What is a Fact Table?
A fact table is a table that joins dimension tables with measures. For example, Lets say you wanted to know the time worked by employees, by location, by project and by task. If you had a dimension for employees, location, project and task you would create a composite primary key using these foreign keys and add an additional column for the time worked measure. (more on measures in a little bit)
Keep in mind that fact tables are huge unlike dimension tables. Fact tables are usually built to contain a hundred thousand records on the low side up to billions of records on the high side. Therefore, these tables must be normalized to be efficient.