title: What does the static keyword mean?
body: <p>I am a C# beginner. I found there are 2 way to write codes and output the same results.
  Could you explain the different between them? And when to use #1 and #2?</p>
  
  <h2><code>#1</code></h2>
  
  <pre><code>class Program
  {
      static void Main()
      {
          Program min = new Program();
          Console.WriteLine(min.isMin(1, 2));
          Console.ReadLine();
      }
  
      int isMin(int value1, int value2)
      {
          int Min;
          return Min = Math.Min(value1, value2);
      }
  }
  </code></pre>
  
  <h2><code>#2</code></h2>
  
  <pre><code>class Program2
  {
      static void Main()
      {
          Console.WriteLine(isMin(1, 2));
          Console.ReadLine();
      }
  
      static int isMin(int value1, int value2)
      {
          int Min;
          return Min = Math.Min(value1, value2);
      }
  }
  </code></pre>