Question: what is the difference between blocking and locking?
Answer: Locking is the mechanism that SQL Server uses in order to protect data integrity during transactions. Block (or blocking lock) occurs when two processes need access to same piece of data concurrently so one process locks the data and the other one needs to wait for the other one to complete and release the lock.