A ``quantum graph'' is a graph considered as a one-dimensional complex and equipped with a differential operator (``Hamiltonian''). Quantum graphs arise naturally as simplified models in mathematics, physics, chemistry, and engineering when one considers propagation of waves of various nature through a quasi-one-dimensional (e.g., ``meso-'' or ``nano-scale'') system that looks like a thin neighborhood of a graph. Works that currently would be classified as discussing quantum graphs have been appearing since at least the 1930s, and since then, quantum graphs techniques have been applied successfully in various areas of mathematical physics, mathematics in general and its applications. One can mention, for instance, dynamical systems theory, control theory, quantum chaos, Anderson localization, microelectronics, photonic crystals, physical chemistry, nano-sciences, superconductivity theory, etc. Quantum graphs present many non-trivial mathematical challenges, which makes them dear to a mathematician's heart. Work on quantum graphs has brought together tools and intuition coming from graph theory, combinatorics, mathematical physics, PDEs, and spectral theory. This book provides a comprehensive introduction to the topic, collecting the main notions and techniques. It also contains a survey of the current state of the quantum graph research and applications.