If I have a list containing an arbitrary number of lists, like so:
var myList = new List>() { new List() { \"a\",
Take a look at the linqlib project on codeplex, it has a rotate function that does exactly what you need.