using System.Collections.Generic;
public string UserId {get;set;}
public List<Reviewers> Reviewers { get; set; } = new List<Reviewers>();
public static void Main()
var Review = new Review {
Reviewers = new List<Reviewers>() {
new Reviewers { UserId = "1" },
new Reviewers { UserId = "2" }
List<string> newReviewers = new List<string> { "1", "20", "500" };
var inList = Review.Reviewers.Where(p => !newReviewers.Contains(p.UserId));
var newList = newReviewers.Aggregate(new List<Reviewers>(), (accu, next) => {
if (inList.Where(j => j.UserId == next).Count() > 0) {
return accu.Concat(new List<Reviewers>() { new Reviewers { UserId = next } }).ToList();
Console.WriteLine("OLD:");
Review.Reviewers.ForEach(p => Console.WriteLine(p.UserId));
Console.WriteLine("New:");
newList.ForEach(p => Console.WriteLine(p.UserId));