"Nach" is chiefly used for continents, countries, cities, regions, etc; all larger scale locations, such as your example: "nach München."
"Zu" is used for smaller scale locations or toward people. For example:
"I'm going to the doctor today." = "Ich gehe heute zum Arzt."
"Ich gehe zum Bahnhof."
Both of the above examples use "zum," but that is only because of the gender of the articles. Since "zu" is a dative case preposition, masculine or neuter nouns become "dem." So you could potentially say "Ich gehe heute zu dem Arzt," but "zu dem" is more commonly contracted to "zum."
Here is another example:
"I'm going to the bathroom/toilet." = "Ich gehe zur toilette." Since it is "die toilette," when paired with "zu," "die" changes to "der" and is then contracted to "zur."
"In" is used when you are entering a particular location. As in your example, you say "ins Kino." the original form is "das Kino" and when paired with "in," the "in das" contracts to "ins." For "in," that "ins" is the only possible contraction. For the other articles, it would simple be "in der" or "in die."
There is an exception to the above in which for countries, you would use "nach," however, if the name of the country contains an article, then you would use "in." For example:
"Ich fahre in die Schweiz."
Does all of this make sense? Please let me know if you need any clarification.