Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

High level asynchronous programming with Reactive Extensions

When I finished my university in 2013, I wrote my thesis about Rx and also released it as a free ebook available for anyone interested in learning about it. That book was written in Hungarian, it was based on Rx 2.x version and it was targeting Windows 8 WinRT app developers. Since then some things have changed in the library (moving to NuGet, changed namespaces, etc), WPF on .NET Core 3 (Preview) got released and I had the chance to rethink some parts of the book and most importantly translate it to English.

This book is not a hard core deep dive book, it's an introduction for beginners who want some easy to understand "Hello World" level examples to understand the core concepts of Rx and see the various LINQ operators working alone and combined.

I host this book on GitHub with the source code of the examples and any tools I've been using to put this book together, and I absolutely welcome any suggestions or requests to expand this book with, or potentially even do a series of blog posts or another more in-depth book to talk about more advanced scenarios.

I hope you are going to enjoy it.

Let's jump into it!