Respuestas:
Sí, Enumerable.Skip hace lo que quieres:
contents.Skip(1)
Sin embargo, el resultado es un IEnumerable <T>, si desea obtener un uso de matriz:
contents.Skip(1).ToArray()
Lo siguiente sería equivalente a su forciclo:
foreach (var item in contents.Skip(1))
Message += item;
var item??
contentsmatriz en una nueva instancia de laArraySegment<>estructura. En el momento de escribir la respuesta anterior, que no era particularmente útil, pero desde .NET 4.5 losArraySegment<>implementosIList<>,IReadOnlyList<>y sus interfaces base (incluidosIEnumerable<>), por lo que puede por ejemplo pasar unaArraySegment<>astring.Join.