title: Form.ShowDialog() and dispose
body: <p>If I have a method like this:</p>
  
  <pre><code>public void Show()
  {
     Form1 f = new Form1();
     f.ShowDialog();
  }
  </code></pre>
  
  <p><strong>Do I still need to call dispose</strong> on the form even though it will go out of scope, which will be eligible for garbage collection. </p>
  
  <p>From some testing, calling this Show() multiple times .. at some point it seems like the GC collects it since I can see the memory spiking then it goes down at some point in time. </p>
  
  <p>From MSDN it seems to say you MUST call dispose when the form is not needed anymore.</p>