Split List into Sublists with LINQ
Try the following code. public static List<List<T>> Split<T>(IList<T> source) { return source .Select((x, i) => new { Index = i, Value = x }) .GroupBy(x => x.Index / 3) .Select(x => x.Select(v => v.Value).ToList()) .ToList(); } The idea is to first group the elements by indexes. Dividing by three has the effect of grouping them … Read more