This review investigates the use of certain types of interaction in mathematics education. These types include interaction between students, interaction between teacher and students, and interaction between students and leaning technology. Student-technology interactions are explained by computer programs that use problem-solving strategies and multiple representations. Interaction between teacher and students are explained in two categories, classroom interaction and small group interaction. Teachers need to consider many factors in order to establish a classroom environment to enhance the mathematical understanding of their students. In small cooperative groups, factors that effect interaction are as follows: group composition, type of interaction, effect of teacher, interdependence of students and nature of the task. We provide some teaching implications of the findings as follows: students should be encouraged to use multiple representations to develop problem solving strategies; students’ motivation to learn should be mastery goal oriented, teachers should try to create contexts for mathematical argumentation; teachers should encourage student participation in classroom discussions; students should be expected to provide mathematical reasoning rather than producing the right answer; and design of tasks should be suitable to promote skills such as mathematical reasoning and metacognition.