Word2vec Re-training with new corpus, how the weights will be updated for the existing vocabulary?
If I understand this option correctly, you are resetting all the weights of the shared words and then train them on the C2 data... This would mean that all the information on the shared words from C1 is lost, which would seem like a big loss to me. (I dont know the corpus sizes). Also, how different are the two corpora? How big is this intersection? Do the corpora cover similar topics/areas or not? This could also influence your decision on whether losing all the info from the C1 corpus is okay or not okay.
This seems like a more logical flow to me... but again the difference in corpora/vocabulary is important here. If a lot of words from C2 are left out because of the intersection, you can think of ways to add unknown words one way or another. 

But in order to asses which option is truly 'best' in your case, create a case where you can measure how 'good' one approach is according to the other. In most cases this involves some similarity measure... but maybe your case is different..
Scenerio: A word2vec model is trained on corpus C1 with vocabulary V1. If we want to re-train the same model with another corpus C2 having vocabulary V2 using train() API, what will happen out of these two:

For model, weights for V1 intersection V2 will be reset and re-training for with corpus C2 will come up with all together new weights
For model, re-training with corpus C2 will be continued with the existing weights for vocabulary V1 intersection V2.

Which one is correct hypothesis out of the above two?