Для чего знать время выполнения? Всегда хочется,чтобы наша программа работала как можно быстрее.

Иногда этого можно добиться просто заменив методы более быстрыми. Например иногда используют для проверки наличия строки в тексте метод IndexOf, тогда как метод Contains как минимум в 2 раза быстрее сделает эту же проверку. Замерив время нескольких методов, которые могут выполнить вашу задачу, логичнее выбрать тот который выполняется быстрее остальных.

Как узнать время выполнения?

Для замеров времени можно использовать класс Stopwatch

using System.Diagnostics;

Stopwatch watch = new Stopwatch();
watch.Start();
System.Threading.Thread.Sleep(10000);
watch.Stop();
MessageBox.Show(
"Время выполнения программы в миллисекундах : " + watch.ElapsedMilliseconds + "мс.\r\n"+
"Время выполнения программы в секундах : " + watch.Elapsed.Seconds + "сек.\r\n"+
"Время выполнения программы в Тиках :" + watch.ElapsedTicks+"\r\n"
);
 

//MessageBox.Show("1 тик равен: " + ((1000L * 1000L * 1000L) / Stopwatch.Frequency) + " наносекунд\r\n");
//1 тик равен: 427 наносекунд

Другой способ при использовании DateTime

DateTime StartTime;

StartTime = DateTime.Now;
System.Threading.Thread.Sleep(10000);
DateTime EndTime = DateTime.Now;

MessageBox.Show("Время работы программы : " + (EndTime - StartTime));