Nearly one hundred years ago Jacques Hadamard used infinite sequences of symbols to analyze the distribution of geodesics on certain surfaces. That was the beginning of symbolic dynamics. In the 1930's and 40's Arnold Hedlund and Marston Morse again used infinite sequences to investigate geodesics on surfaces of negative curvature. They coined the term symbolic dynamics and began to study sequence spaces with the shift transformation as dynamical systems. In the 1940's Claude Shannon used sequence spaces to describe infor mation channels. Since that time symbolic dynamics has been used in ergodic theory, topological dynamics, hyperbolic dynamics, information theory and complex dynamics. Symbolic dynamical systems with a finite memory are stud ied in this book. They are the topological Markov shifts. Each can be defined by transition rules and the rules can be summarized by a transition matrix. The study naturally divides into two parts. The first part is about topological Markov shifts where the alphabet is finite. The second part is concerned with topological Markov shifts whose alphabet is count ably infinite. The techniques used in the two cases are quite different. When the alphabet is finite most of the methods are combinatorial or algebraic. When the alphabet is infinite the methods are much more analytic. This book grew from notes for a graduate course taught at Wesleyan Uni versity in the fall of 1994 and is intended as a graduate text and as a reference book for mathematicians working in related fields.