ok, if row.Cells is enumerable in the LINQ sense, then
int chunkSize = 10;
var chunks = row.Cells().Select((x, i) => new { Index = i, Value = x })
.GroupBy(x => x.Index / chunkSize)
.Select(x => x.Select(v => v.Value).ToList())
.ToList();
Will produce a 'List of Lists' where
List 0 = List cells for Columns 1..10
List 1 = List cells for Columns 11..20
...