Say I have an arbitrary number of collections, each containing objects of the same type (for example, List and List).
Given that you're starting with a bunch of separate collections, I think your solution is rather elegant. You're going to have to do something to stitch them together.
It would be more convenient syntactically to make an extension method out of your Combine method, which would make it available anywhere you go.