This book is an introduction to the theory of quiver representations and quiver varieties, starting with basic definitions and ending with Nakajima's work on quiver varieties and the geometric realization of Kac-Moody Lie algebras. The first part of the book is devoted to the classical theory of quivers of finite type. Here the exposition is mostly self-contained and all important proofs are presented in detail. The second part contains the more recent topics of quiver theory that are related to quivers of infinite type: Coxeter functor, tame and wild quivers, McKay correspondence, and representations of Euclidean quivers. In the third part, topics related to geometric aspects of quiver theory are discussed, such as quiver varieties, Hilbert schemes, and the geometric realization of Kac-Moody algebras. Here some of the more technical proofs are omitted; instead only the statements and some ideas of the proofs are given, and the reader is referred to original papers for details. The exposition in the book requires only a basic knowledge of algebraic geometry, differential geometry, and the theory of Lie groups and Lie algebras. Some sections use the language of derived categories; however, the use of this language is reduced to a minimum. The many examples make the book accessible to graduate students who want to learn about quivers, their representations, and their relations to algebraic geometry and Lie algebras.