Maneira correta de remover um relacionamento muitos-para-muitos via linq para sql?

Digamos que temos duas tabelas com uma relação muitos para muitos:

public class Left{ /**/ }

public class Right{ /**/ }

public class LeftRight{ /**/ }

O seguinte é suficiente para desconectar esses registros (ignorar a possibilidade de mais de um relacionamento ou nenhum relacionamento definido)?

public void Unhook(Left left, Right right){
  var relation = from x in Left.LeftRights where x.Right == right;
  left.LeftRrights.Remove(relation.First());
  Db.SubmitChanges();
}

Ou eu tenho que fazer isso em ambas as partes? O que é necessário aqui?

questionAnswers(3)

yourAnswerToTheQuestion