for (int i = 0; i < 20; i += 2) public IEnumerable<int> SteppedIntegerList(int startIndex, int endEndex, int stepSize) { for (int i = startIndex; i < endEndex; i += stepSize) { yield return i; } } Parallel.ForEach(SteppedIntegerList(0, 20, 2), index => { Console.WriteLine("Index value: {0}", index); });