delete
will only delete current object record from db but not its associated children records from db.
destroy
will delete current object record from db and also its associated children record from db.
Their use really matters:
If your multiple parent objects share common children objects, then calling destroy
on specific parent object will delete children objects which are shared among other multiple parents.