Windows Workflow Foundation (WF) Screencasts
On this page you will find many videos designed for Windows Workflow Foundation (WF) developers of all levels, from the novice to the seasoned professional. The videos are intended as a complement to the articles and code samples available, to help express concepts to those who prefer watching how something is done over reading about it.
New videos are added regularly, so check back often.
Endpoint Screencast Series (WF 3.0 - 3.5)
The Endpoint Screencast series is part of the Channel9 Endpoint show, which is a collection of regularly produced podcasts (endpoint.tv, with Ron Jacobs) and screencasts (posted weekly, Wednesdays at 8am Pacific) that help you better understand how to use Windows Communication Foundation (WCF) and Windows Workflow Foundation (WF).
As part of this, we're partnering with Pluralsight to create a screencast series that walks the viewer through one WF task (i.e., creating a workflow, building an activity, etc). The screencasts are done by Matt Milner, and cut out the typical 10-15 value proposition that a viewer would get in the average webcast, and get right to the task at hand. These screencasts are intended to be consumable in one pass and to be used as reference during the development process. As mentioned above, the screencasts are posted weekly to the Channel9 Endpoint show, and alternate between the topics on WCF and WF.
 Creating Your First Sequential Workflow
In this short video, CSD MVP Matt Milner from PluralSight guides the viewer through how to create your WF Sequential Workflow.
|  Creating Your First State Machine Workflow
In this short video, CSD MVP Matt Milner from PluralSight guides the viewer through how to create your WF state machine workflow.
|  Running Workflows in your .NET Applications
In this short video, CSD MVP Matt Milner from PluralSight guides the viewer through how to run a WF workflow in your .NET application and how to manage it.
|

Using the Persistence Service In this short video, CSD MVP Matt Milner from PluralSight guides the viewer through how to add and use persistence services of Windows Workflow Foundation (WF), and how to save a idle workflow and resume the running of the workflow in another WF client.
| 
Using the WCF Receive Activity In this short video, CSD MVP Matt Milner from PluralSight guides the viewer through how to use the ReceiveActivity within Windows Workflow Foundation (WF) to allow WCF clients to invoke the WF 3.5 workflow.
| 
Using the WCF to Consume Services In this short video, CSD MVP Matt Milner from PluralSight guides the viewer through how to use the WF 3.5 SendActivity to synchronously consume services using the Windows Communication Foundation (WCF) - it picks up from last week's screencast that introduced use of the ReceiveActivity.
|

Creating Custom Activities In this short video, CSD MVP Matt Milner from PluralSight guides the viewer through how to create a custom activity in Windows Workflow Foundation (WF) that can be used in WF workflows. To do this, we create a new class that inherits from Activity and has some properties. We then use this activity in a basic sequential workflow
| 
Creating Composite Activities In this short video, CSD MVP Matt Milner from PluralSight guides the viewer through how to create composite activities, combining multiple custom activities into a single custom activity that can be used in WF workflows. This screencast picks up where last week's Creating a Custom Activity screencast leaves off.
| 
Using SQL Tracking Services with WF In this short video, CSD MVP Matt Milner from PluralSight guides the viewer through how to add tracking capabilities to your WF using SQL Tracking Services.
|

Working with WF Tracking Profiles In this video, CSD MVP Matt Milner from PluralSight guides the viewer through how to work with WF tracking profiles (both SQL and custom tracking services). Matt expands on tracking profiles, detailing out to create a profile via code and SDK sample apps, serialize the profile out for use in applications, and how to use the profiles within your workflow activities and workflows.
| 
Using the WF Replicator Activity In this short video, CSD MVP Matt Milner from PluralSight guides the viewer through how to using the WF replicator activity to add more advanced flow control capabilities to your WF workflows. He introduces the replicator activity, which allows you to implement ForEach-like semantics on workflow data. He adds the replicator to an existing workflow, binds the activity to the incoming data, and demonstrates how the replicator activity runs child activities. For this screencast, Matt uses an example sending e-mail notifications to persons in a data list. | 
Working with Transactions in WF In this short video, CSD MVP Matt Milner from PluralSight guides the viewer through how to work with Windows Workflow Foundation (WF) transactions, from the simple use case of scoping activities to participate in a transaction to the more advanced scenario of queue up work to participate in a transaction from an activity or the WF host application.
|

Fault Handling in WF In this short video, CSD MVP Matt Milner from PluralSight guides the viewer through how fault handling works in Windows Workflow Foundation (WF) 3.5.
| 
Using the Listen Activity in WF 3.5 In this short video, CSD MVP Matt Milner from PluralSight guides the viewer through how to use the listen activity in Windows Workflow Foundation (WF) to listen for multiple events.
| 
Declarative XAML Workflows in WF 3.5 In this short video, CSD MVP Matt Milner from PluralSight guides the viewer through how to use declarative XAML workflows. |
MSDN UK .NET Nugget Screencast Series (WF 3.0 Beta)
This webcast series was presented by Mike Taulty, designed to introduce .NET developers to Windows Workflow Foundation (WF) 3.0. The webcasts were recorded in late 2006, when WF was still in late beta and part of what was then called 'WinFX,' but the videos were well received and provide a good introduction to the technology.
.jpg) WF: "Hello World"
In this session we'll look at the Workflow Foundation for the first time and build a simple "Hello World" style application using a code-first approach and then a designer-first approach. | .jpg) WF: Exceptions
Workflow Foundation has specific capabilities for handling exceptions in your code, let's take a look at how it's done. | .jpg) WF: Passing Parameters to Workflows
Sometimes Workflows need to be passed parameters from their hosting environment. In this slot, we'll explore how we can feed data into a Workflow instance before it runs. | .jpg) WF: Working in Parallel
Workflow has built in capabilities for executing sets of activities in parallel. In this session we'll explore the Parallel activity and what it can do for us. |
.jpg) WF: Logic and Looping
Simple programming constructs such as looping and conditional logic are represented in Workflow. Here we take a look at how we can model conditions and loops. | .jpg) WF: Listening for Events
A common pattern in Workflow is to wait for a event to occur and Workflow Foundation supports this natively. Here we examine how we can use the Listen activity to wait for events to occur. | .jpg) WF: Cancellation Handlers
At times, Workflow may have to cancel your executing code. When it does so, you can receive notification in the form of a cancellation handler. This session explores cancellation handlers. | .jpg) WF: Workflow to Host Communication
Workflows are hosted by your application. When a Workflow instance needs to communicate with the "outside world" it will do so through your application's hosting code. Here, we'll see how that is done. |
.jpg) WF: Two-Way Host/Workflow Communication
Here we put together two previous sessions and show how we can get asynchronous two-way communication going between a Workflow instance and its host environment. | .jpg) WF: Transactions
Workflow has rich capabilities for dealing with transactional work. In this session we'll explore how we can make use of the TransactionScope activity and also how to compensate for atomic transactions in circumstances where the Workflow has to reverse work already done. | .jpg) WF: State Machine Workflows
Workflow Foundation has native support for modelling finite state machines. In this session we'll build a simple example and look at how we model states and the transitions between them. | .jpg) WF: Host to Workflow Communication
A host process communicates with Workflow instances by firing events on a shared interface. In this session we'll take a look at how that works. |
.jpg) WF: Custom Activities
Workflow Foundation is an extensible framework based around adding custom activities. In this session we'll build our first activity and make use of it from a Workflow instance. | .jpg) WF: Using Tracking
A core capability of the Workflow Runtime is to track information as activities and workflows execute. The Workflow Foundation ships with a SQL Tracking service, and this session explores how to configure and make use of it. | .jpg) WF: Using Scheduling
The Workflow Runtime uses a pluggable scheduling service in order to execute activities and workflows on threads. In this session we'll take a look at the two scheduling options that come with the Foundation today. | .jpg) WF: Using Persistence
It is possible to save Workflow Instances into a persistent format in order to save resources or to allow a Workflow host to be recycled. In this session we'll look at using the SQL Persistence Service to achieve this. |
.jpg) WF: Synchronising Activities
Within a Workflow, it is sometimes important to ensure that a group of activities are scheduled for execution as a single block. This session looks at the Synchronization Activity that enables this. | .jpg) WF: Modifying Workflows
The Workflow Runtime provides capabilities to modify Workflow Instances after they have started running. In this session we'll look at the code to achieve this. | .jpg) WF: Building Persistence Services
WF comes with its own persistence service that uses SQL Server. However, it is also possible to build your own, and in this session we explore the basics of achieving that. | .jpg) WF: Declarative Workflows
One of the ways of building Workflows is to model them entirely declaratively in an XAML file. This session takes a look at how we can do this. |
.jpg) WF: Calling Web Services
This session looks at how to make a call to a Web Service from a Workflow. | .jpg) WF: Building Tracking Services
Whilst Windows Workflow comes with a SQL Tracking Service, it is also possible to implement your own to track information as activities and workflows execute. This session explores the basics of writing a tracking service. | .jpg) WF: Building Scheduling Services
It is possible to implement your own scheduling service to underpin the Workflow Runtime as it executes activities and workflows. This session takes a look at the basics of writing such a service. | .jpg) WF: Exposing Web Services
Workflow Foundation has built-in capabilities that allow a Workflow to be published as an ASP.NET Web Service - in this session we'll look at how this is done and how it works. |
.jpg) WF: Correlation
Workflow Foundation has automatic capabilities for correlating messages that leave a Workflow instance with messages that are received by that same instance, making message exchange easier to deal with. In this session we'll look at how that's achieved. | .jpg) WF: Composite Activities
Workflow Activities partition into the 'basic' activities which perform a single task and 'composite' activities which act as a container for other Activities. In this session we'll take a brief look at writing a custom composite activity. | .jpg) WF: Calling Other Workflows
Workflow solutions can be decomposed into multiple workflows where one calls another just like one subroutine in a program calls another. There are differences such as the asynchronous nature of invoking a Workflow, and in this session we'll look at how this is done. | .jpg) WF V3.5 - Building WCF Services Using Workflow Foundation
In .NET Framework V3.5, Workflow Foundation comes together with Communication Foundation in order that we can easily build a Workflow and make it available as a WCF service. In this video, we'll take a look at doing that. |