When you use NORECOVERY
mode, no access will be given to the target database, so the database does not have to care about uncommitted transactions. The log can just be restored "as is" and left in that state.
When you use STANDBY
mode, the database restores as NORECOVERY
, then analyzes and rolls back all uncommitted transactions in the log. It can then give read only access to users. When the next log is restored, the database disconnects all users and rolls the uncommitted transactions from the last log forward again before restoring.
As you can see, STANDBY
has potentially large extra overhead at restore, depending on your transaction volume.
More details at this article at My World of SQL.