title: What differs when Debug build is ran with debugging and without debugging?
body: <p>I used to believe that if we got a <code>Debug</code> build it didn't really matter whether: </p>
  
  <ol>
  <li>We ran it.   </li>
  <li>Or we debugged it.</li>
  </ol>
  
  <p>everything would be the same.</p>
  
  <p>However recently I ran into 2 different problems, where its clear that something is different when the code is just run, or when it is debugged, even if version of code is supposedly the same.
  (namely <a href="https://stackoverflow.com/questions/7060850/fluent-nhibernate-cannot-load-mysql-data-from-gac-in-debug-mode-of-a-test">Fluent NHibernate cannot load MySql.Data from GAC in debug mode of a test</a>
  and <a href="https://stackoverflow.com/questions/7289061/npgsql-fluent-nhibernate-why-in-debug-throws-exception-but-when-ran-without-de">Npgsql - Specified method is not supported</a>)</p>
  
  <p>I am wondering what is that difference between those two in .NET 4.0? Understanding whats different could probably help me solve the issues I am having because I'll at least know where to look for possible causes of bugs in those different cases. I don't understand it when I run unit tests its all green, but when I try to debug them I get various exceptions thrown..</p>