title: Why looping in Delphi faster than C#?
body: <p>Delphi:
  <pre><code>
  procedure TForm1.Button1Click(Sender: TObject);
  var I,Tick:Integer;
  begin
    Tick := GetTickCount();
    for I := 0 to 1000000000 do
      begin
      end;
    Button1.Caption := IntToStr(GetTickCount()-Tick)+' ms';
  end;
  </pre></code></p>
  
  <p>C#:
  <pre><code>
  private void button1_Click(object sender, EventArgs e)
          {
              int tick = System.Environment.TickCount;
              for (int i = 0; i &lt; 1000000000; ++i)
              {
              }
              tick = System.Environment.TickCount - tick;
              button1.Text = tick.ToString()+" ms"; 
          }
  </pre></code></p>
  
  <p>Delphi gives around 515 ms</p>
  
  <p>C# gives around 3775 ms</p>