i know, everyone's been predicting and you think i should wait till wednesday to read the new chapter but :

I Think Kakashi Killed Rin so that the enemy couldn’t get a hold of information on the village.
Based on the situation he figured he couldn’t possibly win against al the enemies so chose to kill Rin himself instead.
Note that the enemy would like information and would probably torture her to get that en then kill her.
This is almost a dejavu if you look back at what Kisame did when his team was cornered.

If you look at Kakashi’s expression he’s not shocked, but rather determined (though very emotional as well) that this needed to be done because he figured there’s no other way.