This book falls into two parts: the first provides a comprehensive introduction to the basics of matroid theory, while the second treats more advanced topics. The book contains over five hundred exercises and includes, for the first time in one place, short proofs of all but one of the major theorems in the subject. The final chapter lists sixty unsolved problems and describes progress towards their solutions.