C#のロックの処理速度比較

Interlocked > lock > SemaphoreSlim > Semaphore の順に早いようです。

ちなみに
lock ステートメントのなかでロックされるのは、lock に指定したオブジェクトのみ
なので注意。

ネタ元