This book provides a systematic introduction to various geometries, including Euclidean, affine, projective, spherical, and hyperbolic geometries. Also included is a chapter on infinite-dimensional generalizations of Euclidean and affine geometries. A uniform approach to different geometries, based on Klein's Erlangen Program is suggested, and similarities of various phenomena in all geometries are traced. An important notion of duality of geometric objects is highlighted throughout the book. The authors also include a detailed presentation of the theory of conics and quadrics, including the theory of conics for non-Euclidean geometries. The book contains many beautiful geometric facts and has plenty of problems, most of them with solutions, which nicely supplement the main text. With more than 150 figures illustrating the arguments, the book can be recommended as a textbook for undergraduate and graduate-level courses in geometry.