Linqについてなのですが
List<int> list = new List<int> {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
のようなListを
{0, 1, 2} {1, 2, 3}{2, 3, 4}・・・{8, 9, 10}
のような感じで取得しながらLinqを記述する方法ってあるのでしょうか?

Take(3)やWhereの組み合わせで出来るのか、Indexをあらかじめ列挙して対応させるしかないのかと考えています
Linqで書かない場合はコードは長くなりますが書ける状態です