This research aims to analyze the types and the functions of code-switchingin EFL Classroom Interaction by teacher and students. The type of this research is descriptive using a qualitative approach. The instruments which are used are observation, interview, and documentation. The observation is conducted 3 times while interview was done to English teacher and some students to know the use of code switching in EFL classroom. The result shows that code switching is mostly used especially in explaining material to students based on Poplack theory. Three types of code switching which was used by the teacher: tag switching occurred 5 times in 3 meetings, intrasentential code-switching occored 33 times in 3 meetings, and interrsentential code-switching occurred 22 times in 3 meetings. Meanwhile, Based on Sert, there are the three functions of teachers’ code-switching accomplished. They were topic switch occurred 37 times in 3 meetings, affective function occurred 16 times in 3 meeting), and repetitive function occurred 16 times in 3 meetings. Besides, there are two functions of students’ code-switching accomplished. These functions are equivalence appeared 3 times in 3 meetings and reiteration appeared 1 time in three meetings. In conclusion, the type of code switching that is most often done by teachers is intersential switching, which occurs in one sentence, when the speaker says a complete sentence in one language into another language. Meanwhile, the code switching function that is most often used by teachers is topic switch, namely the teacher does code switching when explaining material to students, while the code switching function that is most often used by students is equivalence, namely repeating to avoid mistakes.