@sysrpl: I have found that Out of Memory exceptions typically occur when there is too much reliance on Session objects.  In my ASP.NET apps I don't use Session at all because it uses up server memory and also times out.  I rely on View State, Query String paramters, and database calls.  I haven't had a single Out of Memory exception since.

Hope that helps.