For those requiring application warmups without writing painful scripts:
http://www.harbar.net/articles/apm.aspx – IIS 7 & IIS 7.5 Below.
With the introduction of IIS 7.5 and Windows 2008 R2 however, there is an actual module developed by the IIS team that will integrate directly with IIS allowing you to seamlessly enable your application pools to load your web applications after a recycle occurs. You can download the extension here; http://www.iis.net/expand/ApplicationWarmUp At the time of this writing, the Application Warm-Up module is still in beta, but I have been using it on our production servers for over a month without any hiccups.