Inserte en tablas de relación de muchos a muchos

Escenario simple

[ClientTable]: ClientId, ClientName, Phone, Age
[CityTable]: CityID, CityName, Country
[ClientCityTable]: ClientCityID, ClientID, CityID

Client client = new Client("John", 123456789, 40);
City city = new City("NY", USA);
ClientCity clientCity = new ClientCity(client, city);

¿Debo hacer InsertOnSubmit en cada objeto (tabla) o solo en clientCity? O no importa? ¿Dónde está la diferencia?

EDITA

Estoy preguntando si debo hacer

DatabaseDC dc = new DatabaseDC(connectionString);
dc.Client.InsertOnSubmit(client);
dc.City.InsertOnSubmit(city);
dc.ClientCity.InsertOnSubmit(clientCity);
dc.SubmitChanges();

o solo

DatabaseDC dc = new DatabaseDC(connectionString);
dc.ClientCity.InsertOnSubmit(clientCity);//because this object has references to client and city
dc.SubmitChanges();

?

EDIT 2

Hice algunos intentos e incluso usoInsertOnSubmit sólo enclient, las entradas se insertan también enCity yClientCity. ¿Cómo debo hacerlo correctamente?

Respuestas a la pregunta(2)

Su respuesta a la pregunta