A matching in a graph G is a set of lines, no two of which share a common point. A matching is perfect if it spans V(G). The problem of finding a matching of maximum cardinality in a graph models a number of significant real-world problems and, in addition, is of considerable mathematical interest in its own right. Matchings are in a sense among the best understood graph-theoretic objects: there exist efficient algorithms to find and good characterizations for the existence of perfect matchings and for the maximum weight of a matching; there are nice descriptions of polyhedra associated with matchings; good bounds and, for a few special classes, exact formulas for the number of perfect matchings in a graph. But there are many important questions that remain unanswered. What is the number of perfect matchings in a general graph? Which graphs can be written as the disjoint union of perfect matchings (i.e., which r-regular graphs are r-line-colorable)? How does one generate a random perfect matching? Matching theory has often been in the front lines of research in graph theory and many results in matching theory have served as pilot results for new branches of study in combinatorics (e.g., minimax theorems, good characterizations and polyhedral descriptions).