title: Delegate Methods vs General Methods
body: <p>I want to know the difference between using Delegate Methods and using General Methods[without Delegates].</p>
  <h2>For Example :</h2>
  <hr />
  <p><strong>With Delegate :</strong></p>
  <pre><code>delegate void DelMethod(string str);
  
  static void Method(string str)
  {
      Debug.WriteLine(str);
  }
  </code></pre>
  <p><em>Usage :</em></p>
  <pre><code>DelMethod dm = new DelMethod(Method);
  dm(string);
  </code></pre>
  <hr />
  <p><strong>And Without Delegate :</strong></p>
  <pre><code>static void Method(string str)
  {
      Debug.WriteLine(str);
  }
  </code></pre>
  <p><em>Usage :</em></p>
  <pre><code>Method(string)
  </code></pre>
  <hr />
  <p>What are the differences of these two??</p>
  <p>The method without delegate is smaller and easy. But I find coders using delegated Methods frequently.</p>
  <p>What is the reason behind this??</p>