Network science is applied graph theory, and this book successfully blends essential graph theory topics with practical and relevant network science to illustrate the underlying mathematics. Mathematicians have been relegated to small-time players in a field populated with sociologists, computer scientists, and physicists. On the other hand, graph theory books are written like reference manuals jam-packed with theorems for graph theorists, leading instructors of graph theory courses to tease out the lecture from a plethora of results. This book's combination of theory and modern applications is needed by both practitioners of data science and students of graph theory seeking to learn modern applications. For example, one difference between this book and existing network science books is that network scientists title their chapters based on individual large graphs like an epidemic graph or the web graph and study all its properties. However, large graphs have a lot of features in common so this book distills those common elements, presents the concepts behind the large graphs, and presents particular large graphs as examples of the underlying mathematics. With a focus on topics most relevant to network science, such as graph structural theory, link analysis, and spectral graph theory, this book contains a host of untapped results for network scientists. In addition, the book is supplemented with a related website and an Instructor's Manual.