もうさ科目吹っ飛ばしてシンプルにしたらどうだ
講師・生徒の多対多

public class A {
public int Id {get;set;}
public virtual List<B> ListB {get;set;}
public A(){ ListB = new List<B>();}
}

public class B {
public int Id {get;set;}
public virtual List<A> ListA {get;set;}
public B(){ ListA = new List<A>();}
}

static void main(){
A a = new A();
B b = new B();

// 1.Aへ要素を追加
// 2.Bへ要素を追加
}

これでAB作られるわけだけどそれぞれのリスト持つから関係をどう作れば?って話でしょ
たぶん1.2 解決したら終わり