When you host Workflow in IIS/Appfabric. You may have to set the unhandled exception behavior:
<workflowUnhandledException action="AbandonAndSuspend" />
So, what is the difference between Abandon and AbandonAndSuspend.
By default, WorkflowServceHost has the ability to resume persisted workflow automatically. For example, if you have a Delay activity in workflow.
WorkflowServiceHost will resume this Delay inducing persisted workflow after the delay timeout.
Now, if you use Abandon, your workflow service instance will resume running automatically, after the workflow instance abandoned by the host.
When you use AbandonAndSuspend, workflow service instance will be abandoned and won't resume running by the host.