Although there are some advantages to learning a foreign language in its original country, I firmly believe that people who learn a foreign language in the country in which it is spoken have a deeper understanding of different language skills than those who learn the same languages in their own countries.
Person 'A' who learns a non-native language in his country may receive benefit from a step-by-step teaching method. In other words, He is not jumping into the foreign country. Therefore he can set aside enough time and energy dedicated to learning the language. Besides, all the learners are probably from the same country, so all these people most likely have learned the language, more or less, in the same way.
On the other hand, when a new learner wants to learn a new language in the country in which it is spoken, he has the opportunity to communicate with natives. He may find native friends and may participate in groups where members are people from the foreign country. No doubt, it leads to better understanding of language essential skills. He also has access to the most up-to-date language. Thus he can learn most useful idioms, proverbs and so many other things which the former person, person 'A', does not have access to.
On the whole, if I wanted to learn a new language and had enough money to afford the travel, I would definitely make the second choice. There are lots of evidences show that communication is the most important factor in learning a new language. When you are exposed to an environment where everybody talks to you in the new language you want to learn and expects you express words from the same language, you are forced to learn it as soon and good as possible.
In a word, although each if these methods have their pros and cons, I am pretty sure that advantages of learning language in the country in which is spoken outweigh the advantages of the other way of learning of a new language.