using System.Collections.Generic;
public int ContactId { get; set; }
public String Name { get; set; }
public static void Main()
var test = new List<Contact> {
new Contact { ContactId = 1, Name = "Fulano" },
new Contact { ContactId = 2, Name = "Beltrano" },
new Contact { ContactId = 3, Name = "Ciclano" }
var test2 = test.FirstOrDefault(x => x.GetType().GetProperty("ContactId").GetValue(x).ToString() == 1.ToString());
Console.WriteLine(test2.Name);