I used to work as teaching English to foreigners and it was the most difficult job I've ever worked.
Before taking that job, I had to learn to use Vietnamese correctly and standardly. However, I realized that I shouldn't teach them correct Vietnamese because Vietnamese people don't speak correct Vietnamese everyday. Then I changed my teaching plan, I did teach them the way Vietnamese people speak incorrectly.
The most difficult skill is pronunciation, my students used to be American, Japanese and German, the German is pronounce better than the American and Japanese.
The second difficult skill is the meaning of sentences and phrases. Vietnamese language is a very complicated language, 1 meaning - many way to say. That means if I teach them 1 best way to express 1 meaning, they can use it well, but when other Vietnamese people say that meaning in many different ways, they wouldn't understand.
Last but not least, the accent - There are many accents of Vietnamese throughout Vietnam (54 provinces have 54 accents) even Vietnamese people can't understand all them :)) For example: the People from Ha Noi city may not understand the people from Hue Province or Da Nang Province.
In summary, I still love that job and love Vietnamese much.
When you meet trouble in learning Vietnamese, don't hesitate to contact me ;)