другой - neutral style
иной - 'higher' style and slightly archaic, that is the differency is stylistic
(to a native speaker mixing of words of different styles may sound funny, so it's easy to spot a non-native speaker in such contexts)

иностранец <--- иная + страна (i.e. person from another country, land), cnf. чужестранец, иноземец, чужеземец (чужой means alien here) - all these are slightly archaic,
see also many other similar words (инородец, иноверец и т.д.)