Почему в .NET есть 5 версий таймерных classов?

Почему в структуре .Net существует пять classов таймера, а именно:

  1. System.Timers.Timer
  2. System.Threading.Timer
  3. System.Windows.Forms.Timer
  4. System.Web.UI.Timer
  5. System.Windows.Threading.DispatcherTimer

Почему существует несколько версий classа Timer? И каковы различия между ними?

Timers.Timer генерирует событие после заданного интервала с возможностью генерации повторяющихся событий. MSDN

Windows.Forms.Timer – это элемент управления для winforms.

Web.UI.Timer выполняет асинхронные или синхронные Web.UI.Timer передачи веб-страниц через определенный интервал. MSDN

Threading.Timer – это таймер для обратных вызовов. Создает новую тему для работы. Подается streamами пула streamов. MSDN

Таким образом, эти таймеры имеют разные цели, также они обслуживаются различными инструментами.