1. Insert : If we use the DML statement insert in bulk operation and if error occurs, the execution will stop, and Apex code throws an error which can be handled in try catch block.
2. Database.insert : If we use the DML database method ( Database.insert) and if error occurs the remaining records will be inserted / updated. It means partial DML operation will be done.