Если вам нужна коллекция DataRow:
dataTable.Rows.Cast<DataTable>
.Where(dr => myCollection.Find(s => s.ID.Equals(dr["ID"])) != null)
else, если вам нужно отфильтровать коллекцию ваших объектов:
var ids = dataTable.Rows.Cast<DataTable>.Select(dr => Convert.ToInt32(dr["ID"]));
var filteredCollection = myCollection.Where(s => ids.Contains(s.Id));
Если вы добавите ссылку на System.Data.DataSetExtensions, вы можете сократить его:
var ids = dataTable.AsEnumerable().Select(dr => dr.Field<int>("ID"));
var filteredCollection = myCollection.Where(s => ids.Contains(s.Id));