Let\'s say I have a sequence.
IEnumerable sequence = GetSequenceFromExpensiveSource(); // sequence now contains: 0,1,2,3,...,999999,1000000
if you don't have time to roll out your own extension, here's a quicker way:
var next = sequence.First(); sequence.Skip(1) .Select(s => { var selected = next; next = s; return selected; });