&gt; The error occurred after u2, but the errors thread got descheduled and the userActions thread kept on processing.<p>Your suggested case is contrived and doesn&#x27;t apply to JavaScript (the examples were in JavaScript where I assume all these streams are in the same thread). I am not claiming withLatestFrom is the correct mechanism for determining order of events in multi-threaded assumptions. That&#x27;s an orthogonal concern to the issue at hand.<p>&gt; I strongly suspect that combining async streams will prove to be a problem in practice<p>Combining async results is a true problem and people often attempt to solve them with callbacks or heavy usage of Futures&#x2F;Promises. Rx solves these problems easily, and I&#x27;ve witnessed a lot of developers confirm this when learning Rx. It&#x27;s not hard to teach the difference between withLatestFrom and combineLatest and their intended use cases. Much easier than managing callback hell, which is what RxJS intends to replace.