I'm working on a project, and needed to do a Cartesian Product (CROSS JOIN), and found this:http://www.interact-.../28/linq-cartesian-1
It's got an excellent treatment of how to do Cartesian Products in C#.
I opted for one of the object based array solutions as it suits what I need better. But there are more powerful solutions available.
Anyways, if you need a Cartesian Product in C#, it nails it.