Walter,
It's unlikely that anything I say will prompt you to change perspective on this, but since you posed the question - the answer isn't "can you do this in ADO.NET", it should be "why are you relying on this approach to begin with?"
These types of queries belong in the database back-end to begin with. When I first moved from VFP to .NET, I was initially alarmed that I couldn't really do set-based queries against ADO.NET datasets.
But gradually, I realized that all the subsequent joins and data-munging that I had been doing against result sets could be redesigned so that the initial queries/stored procs would bring back all that I needed in the first place.
The key is to re-think the entire data access strategy and what groupings you need to bring back, and how you can leverage stored procs to do this work for you.
In the end, the ADO.NET capabilities for filters, sorting, relations, etc. are all one really 'needs'.
Kevin