TESOL stands for Teaching English to Speakers of Other Languages and courses of this nature seek to provide for the needs of all students.
TEFL stands for Teaching English as a Foreign Language and refers to teaching English in a country where English is not widely used, such as China, Brazil or Greece.
TESL stands for Teaching English as a Second Language and refers to teaching English in an English-speaking environment such as the UK, or in a country where English is very widely used such as India or Zambia.
CELTA Certificate in English Language Teaching for Adults
Some TESOL training courses also offer courses relating specifically to teaching English to children of seventeen years or under.
In practice, there is no difference. Teachers with any one of these qualifications will be able to find teaching posts around the world. Employers are unconcerned about the certificate title as long as the certificate has been accredited by a professional body.