Informally, $K$-theory is a tool for probing the structure of a mathematical object such as a ring or a topological space in terms of suitably parameterized vector spaces and producing important intrinsic invariants which are useful in the study of algebraic and geometric questions. Algebraic $K$-theory, which is the main character of this book, deals mainly with studying the structure of rings. However, it turns out that even working in a purely algebraic context, one requires techniques from homotopy theory to construct the higher $K$-groups and to perform computations. The resulting interplay of algebra, geometry, and topology in $K$-theory provides a fascinating glimpse of the unity of mathematics. This book is a comprehensive introduction to the subject of algebraic $K$-theory. It blends classical algebraic techniques for $K_0$ and $K_1$ with newer topological techniques for higher $K$-theory such as homotopy theory, spectra, and cohomological descent. The book takes the reader from the basics of the subject to the state of the art, including the calculation of the higher $K$-theory of number fields and the relation to the Riemann zeta function.