using System.Collections.Generic;
public static void Main()
var first = new List<Region>() { new Region(1), new Region(3), new Region(4) };
var second = new List<Region>() {
new Region(1, "Eastern"), new Region(2, "Western"),
new Region(3, "Northern"), new Region(4, "Southern")
var result = from f in first
join s in second on f.ID equals s.ID
select new { f.ID, s.RegionDescription };
Console.WriteLine($"ID={s.ID}, Region='{s.RegionDescription}'");
public string RegionDescription;
public Region(Int32 pRegionID, string pRegionDescription=null)
ID=pRegionID; RegionDescription=pRegionDescription;