Segue exemplo para a classe:
public class Produto
{
public int Id { get; set; }
public string Nome { get; set; }
public double Valor { get; set; }
}
exemplo:
List<Produto> produtos = new List<Produto>{
new Produto{Id=1,Nome="Produto 1",Valor=10},
new Produto{Id=2,Nome="Produto 2",Valor=20},
new Produto{Id=3,Nome="Produto 3",Valor=30},
new Produto{Id=4,Nome="Produto 4",Valor=40},
new Produto{Id=1,Nome="Produto 1",Valor=8},
new Produto{Id=2,Nome="Produto 1",Valor=90},
new Produto{Id=3,Nome="Produto 1",Valor=20},
new Produto{Id=4,Nome="Produto 1",Valor=1},
new Produto{Id=1,Nome="Produto 1",Valor=5}
};
var query = from c in produtos
group c by c.Id into g
select new { Id = g.Key, valor = g.Min(c => c.Valor) };
var listQuery = query.ToList();
Olavo Oliveira Neto
Se for útil marque como resposta e faça um Developer feliz :)