The style of this book is very friendly to the reader and the book is obviously well equipped to serve its main purpose, i.e. the exposition of the main kinds of combinatorial designs to undergraduates. As one can expect, the topics include balanced incomplete block designs, their development by means of difference sets, latin squares, one-factorization, tournaments, Steiner triple systems and their large sets, Hadamard matrices and Room squares. There is a section on the Bruck-Ryser-Chowla theorem (in fact, there are two different proofs). Interactions with other parts of mathematics are limited. Of course, one needs to develop the basic notions of affine and projective geometries (there is a section on ovals) and one needs to be able to work with matrices and quadratic residues. Besides matrices, all other necessary notions are explained in the book. That is usually done at the first point where the notion is needed, which makes it possible for the student to get quickly to the objects he or she is interested in. The book is equipped with exercises, there are quite a few historical remarks and almost no claims are stated without proof. Information about unsolved problems is limited, which perhaps makes the book a little less exciting than it could be.