This book provides essential lecture notes on solving large linear saddle-point systems, which arise in a wide range of applications and often pose computational challenges in science and engineering. The focus is on discussing the particular properties of such linear systems, and a large selection of algebraic methods for solving them, with an emphasis on iterative methods and preconditioning. The theoretical results presented here are complemented by a case study on potential fluid flow problem in a real world-application. This book is mainly intended for students of applied mathematics and scientific computing, but also of interest for researchers and engineers working on various applications. It is assumed that the reader has completed a basic course on linear algebra and numerical mathematics.