title: Is there any reason to not use the static modifier in C#?
body: <p>I am pretty new to C# programming, and I am still learning. I was wondering if there is any particular reason to not use the static modifier when creating a method, for me it just seem much simpler. I tried looking at MSDN but that isn't much help if I don't know what half the words mean.</p>
  
  <p>For example this:</p>
  
  <pre><code>using System;
  
  namespace StaticModifier
  {
      class Program
      {
          static void Main(string[] args)
          {
              SayHi();
          }
  
          static void SayHi()
          {
              Console.WriteLine("Hi");
          }
      }
  }
  </code></pre>
  
  <p>Seems much simpler than this:</p>
  
  <pre><code>using System;
  
  namespace StaticModifier
  {
      class Program
      {
          static void Main(string[] args)
          {
              Program p = new Program();
              p.SayHi();
          }
  
          void SayHi()
          {
              Console.WriteLine("Hi");
          }
      }
  }
  </code></pre>
  
  <p>So would anyone be willing to explain? Keep in mind that I am pretty new so please keep it simple :)</p>