Вы можете использовать следующий запрос LINQ to DataSets, чтобы получить тот же результат, что и ваш запрос в SQL.
var rows = from r1 in table.AsEnumerable()
from r2 in table.AsEnumerable()
where r1.Field<string>("Column1") == r2.Field<string>("Column2")
select r1;
Я предполагаю, что из вашего примера столбцы происходят из одной таблицы.Если нет, то вам просто нужно изменить таблицу в приведенном выше примере следующим образом.
var rows = from r1 in table1.AsEnumerable()
from r2 in table2.AsEnumerable()
where r1.Field<string>("Column1") == r2.Field<string>("Column2")
select r1;
Это похоже на
select * from table1 where column1 in (select column2 from table2)