This book explains the concept of automata theory, the various types of automata and their limitations. It also discusses Turing machines. Each concept is further explain with the help of examples, illustrations and exercises. Aimed at undergraduate and postgraduate students in Computer Science programs.