The Virasoro algebra is an infinite dimensional Lie algebra that plays an increasingly important role in mathematics and theoretical physics. This book describes some fundamental facts about the representation theory of the Virasoro algebra in a self-contained manner. Topics include the structure of Verma modules and Fock modules, the classification of (unitarizable) Harish-Chandra modules, tilting equivalence, and the rational vertex operator algebras associated to the so-called minimal series representations.Covering a wide range of material, this book has three appendices which provide background information required for some of the chapters. The authors organize fundamental results in a unified way and refine existing proofs. For instance in chapter three, a generalization of Jantzen filtration is reformulated in an algebraic manner, and geometric interpretation is provided. Statements, widely believed to be true, are collated, and results which are known but not verified are proven, such as the corrected structure theorem of Fock modules in chapter eight.This book will be of interest to a wide range of mathematicians and physicists from the level of graduate students to researchers.