© 2026 Dometrain. All rights reserved.
Deep dive into production-ready Event Sourcing in .NET
Event Sourcing is a foundational design pattern in persistence architecture, frequently discussed in conjunction with CQRS and DDD. It revolves around the concept of capturing the events that lead to the current state instead of just storing the state itself, as traditionally done in CRUD systems with normalized databases. This approach operates on the premise that the current state can always be reconstructed from the sequence of events, but not the reverse. In our Deep Dive course, we will explore Event Sourcing in greater detail, utilizing the Marten library to implement a robust, production-ready event sourcing system. This course aims to provide a thorough understanding of the principles and patterns of Event Sourcing, diving deeper into its integration with CQRS architecture. By leveraging Marten, you will gain practical experience in building an application that effectively captures and processes events, showcasing how to create a powerful and flexible data management solution. Throughout the course, we will demystify the process of implementing event sourcing, enabling you to understand and utilize its capabilities fully. By the end of this Deep Dive course, you will have a comprehensive understanding of Event Sourcing, its intricate relationship with CQRS architecture, and the tools you need to implement it successfully in a production environment.
Good explanation and reasoning of all facets of event sourcing, using Marten.
The multiple ways to do projections. I do think it would be nice to process projections in external processes.
Again, the course is really well taught, explain exactly the concepts at the right time and gives a deep insight of the Event Sourcing topic in .NET.
It gave some explanation about Marten that are not very detailed in the documentation, or not as clear.
Very practical and useful examples, covers a lot of topics that are all equally important when implementing an event source project.
Marten seems to be a great and complete library to start using in an upcoming ES project.