Ваш запрос не объединяет эти две таблицы ни в одном общем поле:
var q = from u in usertypes
join t in types on u.typeid equals t.id
where t.isBool == false && usertypes.user == id
select u;
Существуют различия между предложениями join и where, в зависимости от того, как они используются. В любом случае предпочтительнее использовать объединение, поскольку LINQ-to-SQL будет генерировать внутреннее объединение, а не перекрестное объединение hash (с последующей фильтрацией на основе предложения where).
Тебе не нужны скобки. Вы можете включить их, так как в некоторых случаях они помогают удобочитаемости.