title: Device.StartTimer vs System.Threading.Timer in Xamarin.Forms
body: <p>What's a benefits or drawbacks of using <code>Device.StartTimer</code> vs <code>System.Threading.Timer</code>?  </p>
  
  <p>Both are firing on background threads, both are cross-platform and netstandard2 compatible. <code>System.Threading.Timer</code> has a bonus points of being non-Xamarin specific.  </p>
  
  <p>What should I use and when?</p>
  
  <ul>
  <li>Device.StartTimer use native APIs.</li>
  <li>According to <a href="https://github.com/mono/mono/blob/master/mcs/class/corlib/System.Threading/Timer.cs" rel="nofollow noreferrer">github.com/mono</a>, <code>System.Threading.Timer</code> seems to use dedicated thread for all timers. Am I right, or do Xamarin use another implementation?</li>
  </ul>