var a = Observable.Range(0, 10);
var b = Observable.Range(5, 10);
var zip = a.Zip(b, (x, y) => x + \"-\" + y);
zip.Subscribe(Conso
This answer is copied from the Rx forums, just so that it will be archived in here as well:
var xs = Observable.Range(1, 10);
var ys = Observable.Range(5, 10);
var joined = from x in xs
from y in ys
where x == y
select x + "-" + y;
Or without using query expressions:
var joined =
xs.SelectMany(x => ys, (x, y) => new {x, y})
.Where(t => t.x == t.y)
.Select(t => t.x + "-" + t.y);