@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.