Selecting a subset of elements in LINQ C# with the Skip operator

The Skip operator is the opposite of Take: it skips the given number of elements in a sequence and selects the rest.

Example data source:

string[] bands = { "ACDC", "Queen", "Aerosmith", "Iron Maiden", "Megadeth", "Metallica", "Cream", "Oasis", "Abba", "Blur", "Chic", "Eurythmics", "Genesis", "INXS", "Midnight Oil", "Kent", "Madness", "Manic Street Preachers"
, "Noir Desir", "The Offspring", "Pink Floyd", "Rammstein", "Red Hot Chili Peppers", "Tears for Fears"
, "Deep Purple", "KISS"};

We’ll omit the first 10 elements and select the rest:

IEnumerable<string> res = bands.Skip(10);
foreach (string item in res)

Skip output

The first element to be selected will be “Chic” as that is the 11th items in the array.

The Skip operator is often used together with Take to allow paging in a data collection. Imagine we have a HTML table where we have 10 items on each page. When the user selects page 2 then we want to show items 11 to 20 in the table. The LINQ query looks like this:

IEnumerable<string> res = bands.Skip(10).Take(10);
foreach (string item in res)

Skip operator output

View the list of posts on LINQ here.

Elliot Balynn's Blog

A directory of wonderful thoughts

Software Engineering

Web development

Disparate Opinions

Various tidbits

chsakell's Blog


Once Upon a Camayoc

Bite-size insight on Cyber Security for the not too technical.

%d bloggers like this: