A workflow models a production process as a set of activities applied to work in progress. As such, workflows describe the order of execution and dependency relationships between activities as the work progresses through the model from start to finish, as activities are performed by people or system functions.
Workflow Runtime Engine
Every running workflow instance is created and maintained by an in-process runtime engine that is commonly referred to as the workflow runtime engine. There can be several workflow runtime engines within an application domain, and each instance of the runtime engine can support multiple workflow instances running concurrently.
When a workflow model is compiled, it can be executed inside any Windows process including console applications, forms-based applications, Windows Services, ASP.NET Web sites, and Web services. Because a workflow is hosted in process, a workflow can easily communicate with its host application.
The following illustration shows how workflows, activities, and the workflow runtime engine are all hosted in process with a host application.