Does SQL Server execute queries in parallel? In other words, if I run a heavy query that takes 10 seconds to execute, and at the same time start another heavy query that takes 10 seconds, will the second query actually start after 10 seconds, or will they start both at the same time?
The queries run in parallel, as far as possible.
The database uses different locks for read and write, on rows, blocks or whole tables, depending on what you do.
If one query only reads from a table, another query can also read from the same table at the same time. If one query updates some records in a table, another query may still be able to read from the table as long as it doesn't read any records that were locked for the update.