using System.Collections.Generic;
public static void Main()
var players = new List<Player> {
new Player { Name = "Alex", Team = "A", Score = 10 },
new Player { Name = "Anna", Team = "A", Score = 20 },
new Player { Name = "Luke", Team = "L", Score = 60 },
new Player { Name = "Lucy", Team = "L", Score = 40 },
var sorted = players.OrderByDescending((o) => o.Score).AsEnumerable();
Console.WriteLine(sorted.First().Name);
var teamAPlayers = players.Where((o) => o.Team == "A");
Console.WriteLine(string.Join(", ", teamAPlayers.Select((o) => o.Name + " - " + o.Score)));
var secondHighest = sorted.Skip(1).First();
Console.WriteLine(secondHighest.Name);
public string Name {get;set;}
public string Team {get;set;}
public int Score {get;set;}