Это зависит от того, о какой версии LINQ вы говорите.
Если вы используете Entity Framework 4.0 и у вас нет дополнительной информации в таблице, кроме идентификаторов, то то, что вы запрашиваете, уже должно быть сгенерировано. Я считаю, что то же самое верно для Entity Framework 1.0.
LINQ to SQL - это другая история. Он никогда не справлялся с отношениями многие ко многим. Вы должны позволить LINQ to SQL сгенерировать третью таблицу, а затем вручную расширить частичные классы в отдельном файле, чтобы скрыть эту третью таблицу. Это некрасиво, но это работает. Вот серия постов в блоге, которые подробно описывают, что нужно сделать:
Как реализовать отношение «многие ко многим» с использованием Linq to SQL