I think the Milankovitch Hypothesis does a great job explaining it.
I'm just trying to recall some figures offhand, because I don't have the exact ones.
The tilt of the Earth's axis varies from about 21 degrees to about 24 degrees. This affects the seasons big time. With a small tilt, there's not much of a difference in day and night between summer and winter, so thus the temperature is pretty constant year round. With a larger tilt, that difference increases significantly. In our Northern winter, we are tilted about 23.5 degrees away from the sun, which puts us a bit farther away from it and makes the sunlight more diffused, because it's hitting us at an angle. In our Northern summer, we are tilted about 23.5 degrees towards the sun, which puts us closer (thus more light) and makes that light more direct, making things warmer.
Now, to go from 21 to 23 degrees takes about 20,000 years.
Then there's the eccentricity of the Earth's orbit (I think). At the moment, Earth is about 1% closer to the sun during Northern winter, and 1% farther away during Northern summer. This also varies in magnitude and is I believe a 100,000 year cycle.
I think the third one is precession of Earth's axis. Why it happens I don't know, but when something has a lot of angular momentum (i.e. 8,000 mile diameter sphere spinning at 1 rev/day) and a perpendicular torque is applied, the object precesses, which means it begins to spin in a perpendicular direction at the same time. That's another cycle that takes a long time.
Then once you add up all three of them, you get a model for predicting the global temperature. I saw one graph where they took the Milankovitch model and the actual data for the past large amount of time and that shit was dead on.