There's a bit of a learning curve but Windows Workflow Foundation (WF) does exactly this. Workflows have activities which can involve raising or handling events and at various points in the workflow, the state of the whole workflow can be serialized. It supports SQL server out of the box but you can extend the persistence layer. When workflows are resumed from serialization they pick up where they left off.
It's worth noting that any serious investment in the current version of WF is discouraged because they completely rewrote it in .NET 4.0 and you should probably start with that if you don't have an investment in the current version.