ASP.NET Compilation Model and Page Model
I keep seeing this question being asked all over the forums. Its a good question because I myself was once wondering about this. Also, namespace conventions have changed and ASP.NET 2.0 wants you to use a more strong name to avoid class conflicts. I like the new approach and developers should benefit from it. The links below give a good overview.
Link: 2.0 Compilation
Link: Page Model