The one significant functional difference is that DELETE (without a WHERE clause) will not reset IDENTITY columns to their initial seed values, whereas TRUNCATE will. Beyond that difference, consider TRUNCATE to be just a more efficient version of DELETE for cases where you need to empty a table.