List<string> repository = new List<string>(new[] { "car", "bike", "airplane", "train", "ship" });
var result = repository.Take(1).Union(repository.Skip(1).OrderByDescending(x => x));
возвращает
{"машина", "поезд", "корабль", "велосипед", "самолет"}
, поэтому в вашем случае используйте
поэтому в вашем случае используйте return
vehicle.Take(1).Union(vehicle.Skip(1).OrderByDescending(x => x.Vid));
, как упомянул Марк, если вы хотите предотвратить удаление дубликатов, вы можете объединить остальную часть списка или добавить первый элемент, как он предлагает.
var result = repository.Take(1).Concat(repository.Skip(1).OrderByDescending(x => x));