After a reading, I could understand C#'s Lock internally Uses Monitor.Enter and the Monitor.Enter acquires a lock for a critical section by using .Net CLR's Sync block flags.
However, I am interested to understand the logic/tech in acquiring lock when 2 parallel threads are executing to acquire the sync block flag at a same exact time. Considering Acquiring lock is also an operation on top of the user code, How is it possible that the same operation from different threads on a shared resource at a same time can't conflict.