It depends on what you’re doing. In general application code, you’ll want to avoid spinlocks.
In low-level stuff where you’ll only hold the lock for a couple of instructions, and latency is important, a spinlock mat be a better solution than a lock. But those cases are rare, especially in the kind of applications where C# is typically used.