As SharePoint Event Receivers & SharePoint workflows have a lot of similarities, Many people stuck on deciding which one to go with: Event Receiver or Workflow? event receiver vs. workflow in SharePoint is always tricky to decide.
Differences Between SharePoint Event Receivers and SharePoint Workflows:
1. Event handlers Can’t be manually initiated – workflows can be initiated either automatically or manually.
2. Event Handlers can be Synchronous or Asynchronous – Workflows are always async (They executes after the operation)
3. In Event Receivers we can cancel the operation (such as add/update/delete) – But in Workflows its not possible.
4. Event handlers execute from a Particular WFE, So when some thing goes wrong in that WFE, It may end-up. But Workflow Jobs are robust and can resume even after Reboots.
5. Usually Event handlers runs for short period – Workflows can be longer even for years!
6. There is no User Interface/user Interaction in Event Receivers – Workflows can have user interactions such as getting user input in Initiation forms.
7. As the Name indicates, SharePoint Event receivers are triggered by events like New Item Adding-Added, Updating-Updated, Deleting-Deleted, etc. – But Workflows triggered only on Creation/Change/deletion.
8. Event Receivers are created using Visual studio – Workflows can be via SharePoint user interface, SharePoint Designer, Visio or Visual studio.
9. Workflows leaves “Workflow History” logs which we can refer for debugging – Event handler doesn’t do such.
10. Event receivers are better for large volume – Workflows are better for small amount of data.
This one from Codeplex: SharePoint 2010 event receiver vs workflow
Thanks to: https://spdevguide.codeplex.com
MSDN version: https://msdn.microsoft.com/en-us/library/ff649084.aspx