Nowadays the alternation between two languages which is known as code-switching is rather the
norm than exception in many communities due to the fact that there are nearly seven thousand
languages spoken throughout the world and more than half of the worlds population is estimated
to be bilingual and engages in code-switching. Code-switching remains one of the central issues
in bilingualism research. For a long time code-switching has been considered as a lack of
linguistic competence since it was taken as evidence that bilinguals are not able to acquire
two languages or keep them apart properly. Nowadays it is the common belief that code-switching
is grammatically structured and systematic and therefore can no longer be regarded as deficient
language behaviour. The purpose of this essay is to explore the question why bilingual speakers
engage in code-switching based on selected theories from a sociolinguistic perspective which
looks beyond the formal aspects and concentrates on the social pragmatic and cultural
functions that code-switching may have.