Вы можете поместить свой запрос в предложение Where вместо использования оператора соединения.
Оператор соединения поддерживает несколько предложений в VB.NET, но не в C #.
В качестве альтернативы вы можете использовать стиль ANSI-82 синтаксиса SQL, например ::10000
from t1 in table1
from t2 in table1
where t1.x == t2.x
&& t1.y == t2.y