A run-time engine of WF provides the basic functionality to execute and manage the workflow lifetime. It runs within the host process and is responsible for executing each workflow instance. A host process can interact with multiple run-time engines at a time, where each engine executes multiple workflow instances. The host process interacts with run-time engine by using any of the following classes,
1. WorkflowInvoker: Invokes a workflow as its method.
2. WorkflowApplication: Controls the execution of a single workflow instance explicitly.
3. WorkflowServiceHost: Hosts the workflows and allows sending and receiving messages among various instances of workflows.