So far, the only successful strategy I\'ve been able to get by with is the following:
Make sure IIS7's "Managed pipeline mode" is set to "Integrated". That has been the single most important thing to do (for me) to get my MVC app running smoothly on IIS7. Here's a good blog post too. When developing the app, I have had no issues using the "Visual Studio Development Server" for running the app.
IIS7 is designed to take all requests and push off the static file stuff efficently. I wouldn't worry about it in the same way one worries about wildcard mappings on IIS6. There is no "load ASP.NET pipeline" penalty because IIS7 is a mean honking ASP.NET pipeline all the time.
Assuming that all of your CSS/JS/image files reside in the Content directory, you could add an ignore route.
routes.IgnoreRoute("Content/{*wildcard}");
This will prevent any requests to the content directory being handled by MVC.