using System.Collections.Generic;
public static void Main()
List<Operation> operations = new List<Operation>
new Operation() { Name = "Exemplo1", StartDate = DateTime.Now.AddDays(-25) },
new Operation() { Name = "Exemplo2", StartDate = DateTime.Now.AddDays(-10) },
new Operation() { Name = "Exemplo3", StartDate = DateTime.Now.AddDays(-20) },
new Operation() { Name = "Exemplo4", StartDate = DateTime.Now.AddDays(-30) },
new Operation() { Name = "Exemplo5", StartDate = DateTime.Now.AddDays(-45) },
new Operation() { Name = "Exemplo6", StartDate = DateTime.Now.AddDays(-50) }
List<Contact> contacts = new List<Contact>
new Contact() { Id = 1, OperationName = "Exemplo1", ContactDate = DateTime.Now.AddDays(-1), OtherAttr = "Qualquer coisa", OtherAttr2 = "Qualquer coisa" },
new Contact() { Id = 2, OperationName = "Operaçao2", ContactDate = DateTime.Now.AddDays(-3), OtherAttr = "Qualquer coisa", OtherAttr2 = "Qualquer coisa" },
new Contact() { Id = 3, OperationName = "Exemplo1", ContactDate = DateTime.Now.AddDays(-34), OtherAttr = "Qualquer coisa", OtherAttr2 = "Qualquer coisa" },
new Contact() { Id = 4, OperationName = "Exemplo2", ContactDate = DateTime.Now.AddDays(-5), OtherAttr = "Qualquer coisa", OtherAttr2 = "Qualquer coisa" },
new Contact() { Id = 5, OperationName = "Exemplo2", ContactDate = DateTime.Now.AddDays(-17), OtherAttr = "Qualquer coisa", OtherAttr2 = "Qualquer coisa" },
new Contact() { Id = 6, OperationName = "Operaçao6", ContactDate = DateTime.Now.AddDays(-19), OtherAttr = "Qualquer coisa", OtherAttr2 = "Qualquer coisa" },
new Contact() { Id = 7, OperationName = "Operaçao7", ContactDate = DateTime.Now.AddDays(-20), OtherAttr = "Qualquer coisa", OtherAttr2 = "Qualquer coisa" },
new Contact() { Id = 8, OperationName = "Operaçao8", ContactDate = DateTime.Now.AddDays(-21), OtherAttr = "Qualquer coisa", OtherAttr2 = "Qualquer coisa" },
new Contact() { Id = 9, OperationName = "Operaçao9", ContactDate = DateTime.Now.AddDays(-25), OtherAttr = "Qualquer coisa", OtherAttr2 = "Qualquer coisa" },
new Contact() { Id = 10, OperationName = "Operaçao10", ContactDate = DateTime.Now.AddDays(-31), OtherAttr = "Qualquer coisa", OtherAttr2 = "Qualquer coisa" },
new Contact() { Id = 11, OperationName = "Operaçao11", ContactDate = DateTime.Now.AddDays(-41), OtherAttr = "Qualquer coisa", OtherAttr2 = "Qualquer coisa" },
new Contact() { Id = 12, OperationName = "Operaçao12", ContactDate = DateTime.Now.AddDays(-45), OtherAttr = "Qualquer coisa", OtherAttr2 = "Qualquer coisa" },
new Contact() { Id = 13, OperationName = "Operaçao13", ContactDate = DateTime.Now.AddDays(-43), OtherAttr = "Qualquer coisa", OtherAttr2 = "Qualquer coisa" },
new Contact() { Id = 14, OperationName = "Operaçao14", ContactDate = DateTime.Now.AddDays(-46), OtherAttr = "Qualquer coisa", OtherAttr2 = "Qualquer coisa" },
new Contact() { Id = 15, OperationName = "Operaçao15", ContactDate = DateTime.Now.AddDays(-39), OtherAttr = "Qualquer coisa", OtherAttr2 = "Qualquer coisa" },
new Contact() { Id = 16, OperationName = "Operaçao16", ContactDate = DateTime.Now.AddDays(-37), OtherAttr = "Qualquer coisa", OtherAttr2 = "Qualquer coisa" },
new Contact() { Id = 17, OperationName = "Operaçao17", ContactDate = DateTime.Now.AddDays(-18), OtherAttr = "Qualquer coisa", OtherAttr2 = "Qualquer coisa" },
new Contact() { Id = 18, OperationName = "Operaçao18", ContactDate = DateTime.Now.AddDays(-19), OtherAttr = "Qualquer coisa", OtherAttr2 = "Qualquer coisa" },
new Contact() { Id = 19, OperationName = "Operaçao19", ContactDate = DateTime.Now.AddDays(-1), OtherAttr = "Qualquer coisa", OtherAttr2 = "Qualquer coisa" },
new Contact() { Id = 20, OperationName = "Operaçao20", ContactDate = DateTime.Now.AddDays(-2), OtherAttr = "Qualquer coisa", OtherAttr2 = "Qualquer coisa" }
List<Contact> listaResultado = contacts.Where(x => x.OperationName.Equals(operations.FirstOrDefault().Name) && x.ContactDate > operations.FirstOrDefault().StartDate).ToList();
listaResultado.ForEach(p => Console.WriteLine(p.Id));
public string Name { get; set; }
public DateTime StartDate { get; set; }
public int Id { get; set; }
public string OperationName { get; set; }
public DateTime ContactDate { get; set; }
public string OtherAttr { get; set; }
public string OtherAttr2 { get; set; }