In recent years, the old idea that gauge theories and string theories are equivalent has been implemented and developed in various ways, and there are by now various models where the string theory / gauge theory correspondence is at work. One of the most important examples of this correspondence relates Chern-Simons theory, a topological gauge theory in three dimensions which describes knot and three-manifold invariants, to topological string theory, which is deeply related to Gromov-Witten invariants. This has led to some surprising relations between three-manifold geometry and enumerative geometry. This book gives the first coherent presentation of this and other related topics. After an introduction to matrix models and Chern-Simons theory, the book describes in detail the topological string theories that correspond to these gauge theories and develops the mathematical implications of this duality for the enumerative geometry of Calabi-Yau manifolds and knot theory. It is written in a pedagogical style and will be useful reading for graduate students and researchers in both mathematics and physics willing to learn about these developments.