The book introduces the fundamental concepts of the theory of computation, formal languages and automata right from the basic building blocks to the depths of the subject. Important topics such as regular set and regular grammar, context free language, and various types of automata such as deterministic finite automata, non-deterministic finite automata, and pushdown automata have been discussed here. Special focus has been given on Turing machine. The text includes easy explanations of complicated ideas.