Eine wichtige Ergänzung: Nicht in jedem System liefert die Stopwatch Zeitmessungen mit hoher Präzision, als über den High Precision Timer. Wird ein lang laufender Prozess gestoppt, ist dies kein Problem. Wenn aber viele kleine Prozesse (Schleifendurchläufe) gemessen werden sollen, kann dies unerwünschte Nebeneffekte haben: Ohne HPT läuft die Messung meist mit einer Genauigkeit von 7-15 ms, also vergleichsweise lange selbst wenn (einfache) Datenbankinteraktionen notwendig sind. Die Felder "Frequency" und "IsHighResolution" können hier Aufschluss geben.
Siehe dazu auch:
https://docs.microsoft.com/de-de/dotnet/api/system.diagnostics.stopwatch?view=netframework-4.8#remarks
Ansonsten: Mal von meiner Seite vielen Dank für das Blog, es ist immer wieder eine willkommene Referenz!
To measure the execution time of a function/logic, you can use System.Diagnostics.Stopwatch: