var list = new List<int>(); list.Add(2); list.Add(3); list.Add(5); list.Add(7); list.Add(57); list.Add(47); list.Add(17); list.Add(27); From the above list I want to skip the first 2 items and take the remaining. var result = from res in list.Skip<int>(2).Take<int>(5) select res; foreach (int r in result) { Console.WriteLine("{0}", r.ToString()); }