Yes, SQL server will not "re-use" identity numbers once assigned. What's more, it is not guaranteed that the values will be consecutive:
Consecutive values within a transaction – A transaction inserting
multiple rows is not guaranteed to get consecutive values for the rows
because other concurrent inserts might occur on the table. If values
must be consecutive then the transaction should use an exclusive lock
on the table or use the SERIALIZABLE isolation level.
You can use DBCC CHECKIDENT to change the identity values, but it is best to treat them as unique system IDs and do not assume anything about order.
You may also want to look at SEQUENCE which has some advantages over IDENTITY.