Split List into Sublists with LINQ
Asked 07 September, 2021
Viewed 2.9K times
  • 59
Votes

Is there any way I can separate a List<SomeObject> into several separate lists of SomeObject, using the item index as the delimiter of each split?

Let me exemplify:

I have a List<SomeObject> and I need a List<List<SomeObject>> or List<SomeObject>[], so that each of these resulting lists will contain a group of 3 items of the original list (sequentially).

eg.:

  • Original List: [a, g, e, w, p, s, q, f, x, y, i, m, c]

  • Resulting lists: [a, g, e], [w, p, s], [q, f, x], [y, i, m], [c]

I'd also need the resulting lists size to be a parameter of this function.

30 Answer