Yes, SQL Server uses row-level locks on those rows it inserts/updates/deletes - up to a certain point.
That point is roughly 5000 rows - if you try to update or delete more than 5000 rows in a single transaction, then SQL Server will do a lock escalation and place an exclusive lock on the entire table in question (SQL Server does not lock pages - it will escalate to the entire table - or a partition, if the table is partitioned - straight from the row-level locks).
From that point on, no more even SELECT
's are allowed on that table until the delete transaction has committed (or has been rolled back).