Application domains play a critical role in the
implementation of the Microsoft .NET Framework's
security model. Although you will rarely need to work directly with
application domains when writing simple applications, they become an
essential program element once you start writing more complex
systemsin particular, systems that utilize and manipulate
the code-access security (CAS)
mechanism of the Microsoft .NET Common Language Runtime (CLR).
Only highly trusted code can manipulate application domainswe
discuss the specific permissions required to carry out various
operations in Chapter 5, Chapter 6, and Chapter 7. For now, it is enough to know
that applications running from the hard drive of your machine can
utilize all of the techniques we describe here as long as you have
not modified .NET's default security policy.