Team Foundation Server provides a great build environment with both the MSBuild and Team Build frameworks, but currently it lacks the ability to schedule when a particular build type should be run. There are may reasons for wanting to automate the execution of builds, for instance for continuous integration but probably more commonly for the automation of a daily build.
With automated builds we get many good things, like the ability to continuously deliver the software, get early feedback from build breaks and the possibility to collect continuous quality metrics from the code and development process.
Scheduled builds, like a nightly build, is a key feature in agile development processes, where there is a strong focus on short iterations and continuous delivery.
TFSBuildLab allows us to create both time and event based build triggers.