title: Difference between generic argument constrained to an interface and just using the interface
body: <p>What is the difference between this:</p>
  
  <pre><code>void MyMethod(IMyInterface value)
  {
      //...
  }
  </code></pre>
  
  <p>and this:</p>
  
  <pre><code>void MyMethod&lt;T&gt;(T value) where T : IMyInterface
  {
      //...
  }
  </code></pre>