The correct answer: WAR, CONQUEST AND OCCUPATION.
If you take a look at the conquest map of the Persian Empire, Alexander the Great and Genghis Khan's Mongol Empire, you will be able to find at least a couple dishes that were extremely similar in those areas. This is did not happen by accident. The conquest maps of those empires overlapped in some areas. I will not go into details but the expansion of empires played a very significant role in introducing foods from one ethnic group to another. I'll only say: When armies came, they usually came with foods and cooking styles they are most familiar and most comfortable with. When armies leave, they usually bring back whatever they liked the best including foods and cooking styles. One of the most recent example of this is the Japanese invasion of Asia. Korea and Taiwan were both occupied by Japanese during the invasion. Japanese takuan is still popular and common in both Korea and Taiwan. Taiwan got their own version of sushi and Korea got gimbap. Japanese brough back items like ramen (NOT the instant noodle), gyoza, rayu, cha-han, charsiu, and nikuman from China.
Before modern transportations became available, local foods were rarely introduced into other countries. Back then, many countries were divided by natural barriers. Traveling between countries definitely wasn't an easy task. Of course there were brave travelers and traders who weren't stopped by those natural barriers and those travelers and traders did introduced some foods from one country to another. But their part weren't as significant as many thought they would be. If travelers and traders were effective at introducing different foods from other parts of the world, spice trade with India and silk trade with China should have also introduced many different ethnic foods to many different parts of the world; this did not happen. Introduction of new foods by travelers/traders/explorers remained insignificant until AFTER people learned to navigate across the seas.