title: C# What exactly is application domain?
body: <p>I understand that an application domain forms:</p>
  
  <p>an isolation boundary for security, 
  versioning, 
  reliability, 
  and unloading of managed code, </p>
  
  <p>but so does a process</p>
  
  <ol>
  <li>Can someone please help me understand the practical benefits of an application domain? </li>
  <li>I assumed app domain provides you a container to load one version of an assembly but recently I discovered that multiple versions of strong key assembly can be loaded in an app domain. </li>
  </ol>
  
  <p>My concept of application domain is still not clear. And I am struggling to understand why this concept  was implemented when the concept of process is present. </p>
  
  <p>Thank you. </p>