Two major subjects are treated in this book. The main one is the theory of Bernoulli numbers and the other is the theory of zeta functions. Historically, Bernoulli numbers were introduced to give formulas for the sums of powers of consecutive integers. The real reason that they are indispensable for number theory, however, lies in the fact that special values of the Riemann zeta function can be written by using Bernoulli numbers. This leads to more advanced topics, a number of which are treated in this book: Historical remarks on Bernoulli numbers and the formula for the sum of powers of consecutive integers; a formula for Bernoulli numbers by Stirling numbers; the Clausen–von Staudt theorem on the denominators of Bernoulli numbers; Kummer's congruence between Bernoulli numbers and a related theory of p-adic measures; the Euler–Maclaurin summation formula; the functional equation of the Riemann zeta function and the Dirichlet L functions, and their special values at suitable integers; various formulas of exponential sums expressed by generalized Bernoulli numbers; the relation between ideal classes of orders of quadratic fields and equivalence classes of binary quadratic forms; class number formula for positive definite binary quadratic forms; congruences between some class numbers and Bernoulli numbers; simple zeta functions of prehomogeneous vector spaces; Hurwitz numbers; Barnes multiple zeta functions and their special values; the functional equation of the double zeta functions; and poly-Bernoulli numbers. An appendix by Don Zagier on curious and exotic identities for Bernoulli numbers is also supplied. This book will be enjoyable both for amateurs and for professional researchers. Because the logical relations between the chapters are loosely connected, readers can start with any chapter depending on their interests. The expositions of the topics are not always typical, and some parts are completely new.