1. Matchings in Bipartite Graphs. Introduction. The Theorems of König, P. Hall and Frobenius. A Bipartite Matching Algorithm: The Hungarian Method. Deficiency, Surplus and a Glimpse of Matroid Theory. Some Consequences of Bipartite Matching Theorems. 2. Flow Theory. Introduction. The Max-Flow Min-Cut Theorem. Flow Algorithms. Flow-Equivalent Trees. Applications of Flow Theory to Matching Theory. Matchings, Flows and Measures. 3. Size and Structure of Maximum Matchings. Introduction. Tutte's Theorem, Gallai's Lemma and Berge's Formula. The Gallai-Edmonds Structure Theorem. Towards a Calculus of Barriers. Sufficient Conditions for Matchings of a Given Size. 4. Bipartite Graphs with Perfect Matchings. Introduction. Elementary Graphs and their Ear Structure. Minimal Elementary Bipartite Graphs. Decomposition into Elementary Bipartite Graphs. 5. General Graphs with Perfect Matchings. Introduction. Elementary Graphs: Elementary Properties. The Canonical Partition P(G). Saturated Graphs and Cathedrals. Ear Structure of 1-Extendable Graphs. More About Factor-Critical and Bicritical Graphs. 6. Some Graph-Theoretical Problems Related to Matchings. Introduction. 2-Matchings and 2-Covers. 2-Bicritical and Regularizable Graphs. Matchings, 2-Matchings and the König Property. Hamilton Cycles and 2-Matchings. The Chinese Postman Problem. Optimum Paths, Cycles, Joins and Cuts. 7. Matching and Linear Programming. Introduction. Linear Programming and Matching in Bigraphs. Matchings and Fractional Matchings. The Matching Polytope. Chromatic Index. Fractional Matching Polytopes and Cover Polyhedra. The Dimension of the Perfect Matching Polytope. 8. Determinants and Matchings. Introduction. Permanents. The Method of Variables. The Pfaffian and the Number of Perfect Matchings. Probabilistic Enumeration of Perfect Matchings. Matching Polynomials.