This introduction to the theory of Diophantine approximation pays special regard to Schmidt's subspace theorem and to its applications to Diophantine equations and related topics. The geometric viewpoint on Diophantine equations has been adopted throughout the book. It includes a number of results, some published here for the first time in book form, and some new, as well as classical material presented in an accessible way. Graduate students and experts alike will find the book's broad approach useful for their work, and will discover new techniques and open questions to guide their research. It contains concrete examples and many exercises (ranging from the relatively simple to the much more complex), making it ideal for self-study and enabling readers to quickly grasp the essential concepts.