My solution (Guides -> List of Guid):
List<tstTest> tsts = new List<tstTest>(); for(int i = 0; i < Math.Ceiling((double)Guides.Count / 2000); i++) { tsts.AddRange(dc.tstTests.Where(x => Guides.Skip(i * 2000).Take(2000).Contains(x.tstGuid))); } this.DataContext = tsts;