I tried implementing the .NET Stopwatch for fun, but I got some unexpected results.
I was fully expecting about 100 ms execution time from this program.
Is the Stopwatch class inaccurate or what is going on here?
Code:
namespace Timer
{
    class Program
    {
        Stopwatch s = new Stopwatch();
        static void Main(string[] args)
        {
            s.Start();
            for (int i = 0; i < 100; i++)
            {
                Thread.Sleep(1);
            }
            s.Stop();
            Console.WriteLine("Elapsed Time " + s.ElapsedMilliseconds + " ms");
            Console.ReadKey();
        }
    }
}
Result is 190 ms