This paper is an introduction to the algebraic theory of infinite words. Infinite words are widely used in computer science, in particular to model the behaviour of programs or circuits. From a mathematical point of view, they have a rich structure, at the cross-roads of logic, topology and algebra. This paper emphasizes the combinatorial and algebraic aspects of this theory but the interested reader is referred to the survey articles [32,43] or to the report [30] for more information on the...