Adding this for my own reference but if anyone else finds it useful then feel free to use it.
AppDomains – what are they?
An application domain is an application within a application pool; an application domain is loaded into the application pool when a user request triggers it. The application domain may load dlls, configuration files (.config), etc.
What causes an AppDomain to recycle then?
Application domains will recycle under the following conditions:
- Machine.config is touched or modified i.e. c:\windows\microsoft.net\framework\v[1.1|2.0|3.0|3.5|4.0]\CONFIG\.
- The global web.config is touched or modified i.e. c:\windows\microsoft.net\framework\v[1.1|2.0|3.0|3.5|4.0]\CONFIG\.
- The site local web.config is modified or touched (feature delegation can be a culprit here i.e. default docs, handler mappings);
- Any application web.config is modified or touched.
- Any modifications to the App_[global_resources|local_resources|web_resources|data|code|browsers|themes] directories within the local site i.e. adding a file.
- Any modifications to the bin folder within the wwwroot i.e. adding a file.
- Adding folders within the application domain i.e. the root application could be wwwroot
NOTE: touching the file denotes opening it and making a change i.e. that could simply be adding a space to the end of the file.