Mit der Stopwatch-Klasse von C# kann man leicht Zeitmessungen vornehmen. Hier ein Beispiel:
using System.Diagnostics;
...
int timeout = 5000;
Stopwatch watch = new Stopwatch();
watch.Start();
while (true)
{
//Do Something
if (watch.ElapsedMilliseconds > timeout)
{
break;
}
}