EFL = English as a Foreign Language & TEFL = Teaching English as a Foreign Language
ESL = English as a Second Language & TESL = Teaching English as a Second Language
ESOL = English for Speakers of Other Languages & TESOL = Teaching English to Speakers of Other Languages
The main difference between the acronyms is the perspective of the learner:
In the UK, the learners are speakers of other languages, learning English as a second language. They need the English language to survive. The intricacies of grammar may not be as important as having a wider vocabulary, the ability to make yourself understood or being able to adjust to the culture. In the UK my students are studying ESOL or ESL and I am a TESOL or TESL.
The problem with the term “ESL” is that English may not be a 2nd language but a 3rd etc so “ESOL” was invented. They coexist and are pretty much interchangeable.
In Sri Lanka, where the L1 is Sinhala or Tamil, students learn English as a foreign language. The English language is not needed by these students to survive and it will not have an immediate practical use. Lack of motivation is an important consideration. In Sri Lanka my students are studying EFL and I am a TEFL.
In the acronyms, anything with an S in it corresponds to learning English language in an L1=English country. Without an S corresponds to an L1≠English country.
ELL = English Language Learner, a perspective-independent term.