int total = list.Skip(1).Take(4).Aggregate((x, y) => x * 10 +y);
で動きましたが、Aggregateって初めて見てんで、さっぱり解らん。

シーケンスにアキュムレータ関数を適用します。
Visual C# では、このメソッドを、IEnumerable<TSource> 型のオブジェクトの
インスタンス メソッドとして呼び出すことができます。
Aggregate<TSource>(IEnumerable<TSource>, Func<TSource, TSource, TSource>)
メソッドによって、値のシーケンスの計算を簡単に実行できます。
func が呼び出されるたびに、シーケンスの要素と、集計値の両方を渡します。
byMSDN

???シーケンス?アキュムレータ関数?さっぱり何言ってるのかわかりません。
こういうのをもちっと手取り足取り優しく教えてくれてるサイトから教えてください。
私にはまだ
int sum = 0;
for(int i = 1; i <= 4; i++){
sum *= 10;
sum += list[i];
}のがお似合いのようです・・・