using System.Collections.Generic;
public class EstadoClient
public string Nome { get; set; }
public bool Situacao { get; set; }
public static void Main()
List<EstadoClient> clientes = new List<EstadoClient>
new EstadoClient {Nome = "Cliente 1", Situacao = true},
new EstadoClient {Nome = "Cliente 1", Situacao = false},
new EstadoClient {Nome = "Cliente 1", Situacao = true},
new EstadoClient {Nome = "Cliente 2", Situacao = false},
new EstadoClient {Nome = "Cliente 2", Situacao = false},
new EstadoClient {Nome = "Cliente 3", Situacao = false},
new EstadoClient {Nome = "Cliente 3", Situacao = false},
new EstadoClient {Nome = "Cliente 4", Situacao = false},
new EstadoClient {Nome = "Cliente 4", Situacao = true},
var encontrados = clientes.GroupBy(x => x.Nome).Select(grp => grp.OrderBy(x => !x.Situacao).First());
foreach (var c in encontrados)
Console.WriteLine($"{c.Nome}: {c.Situacao}");