んじゃおれも貼ってみる。ヘルプのサンプル改変だけど、どこかおかしい?
using System;
using System.Threading;
using System.Collections.Generic;
class TimerExample
{
  static void Main()
  {  AutoResetEvent autoEvent   = new AutoResetEvent(false);
    StatusChecker statusChecker = new StatusChecker(1000);
    TimerCallback timerDelegate = new TimerCallback(statusChecker.CheckStatus);
    Timer stateTimer = new Timer(timerDelegate, autoEvent, 1000, 20);
    autoEvent.WaitOne(60000, false);
    stateTimer.Dispose();
  }
}
class StatusChecker
{
  int invokeCount, maxCount;
  public StatusChecker(int count)
  {  invokeCount = 0;
    maxCount = count;
    Console.WriteLine(DateTime.Now);
  }
  public void CheckStatus(Object stateInfo)
  {  AutoResetEvent autoEvent = (AutoResetEvent)stateInfo;
    if(++invokeCount == maxCount){
      Console.WriteLine(DateTime.Now);
      autoEvent.Set();
    }
  }
}