//Sorting public IEnumerable <Call> GetUniqueLastAndTimeSortedCalls() { var result = Calls .GroupBy(item => new { item.Contact, item.CallType }) .Select(chunk => chunk .OrderByDescending(item => item.CallTime) .First()); return(result.OrderByDescending(t => t.CallTime)); }