Workflows have limited events like create, update, send mails, etc.
Plug-ins have more events
Less impact on server response time because the code is run in a different process.
Synchronous plug-ins can increase the platform’s response time because they are part of the main platform processing.
Asynchronous plug-ins have less impact on server response time because the code is run in a different process.
Workflows can be created by an end user who may not have developer skills.
Plug-ins can be created developers only because it needs coding and developer skills.
Workflows triggered automatically run under the security context of the workflow owner.
Plug-in execute under the security context of the crm web application pool identity.
Works well for either short or long processes.
A plug-in registered for synchronous or asynchronous execution is restricted to complete its execution within a 2 minute time limit.
When the Microsoft Dynamics CRM for Outlook client is offline, Workflows do not execute.
Plug-in works in both offline and on-line.
Workflows cannot use impersonation.
Plug-ins can perform data operations on behalf of another system user.