We do this at work. We found that you cannot share classic asp and .Net application pools. So make sure that your classic and .Net sites use different application pools.
Configure a classic pool to have "No Managed Code" under .Net Framework and set Managed Pipeline to "Classic." Configure the .Net application pool to use whatever framework you are using and use "Integrated" for the managed pipeline. For us these settings work great.
If you are sharing classic and .Net under one folder. Right click on the classic site, choose "Manage Web Site" then "Advanced Settings..." and choose the classic application pool. Then make sure to browse to .Net portion of the site in the pane on the left. Go to the folder that has .Net, right click on it, and choose "Convert to Application" in the next dialog choose the application pool you set up for .Net.