Euler's formula, published in 1758, states that if G is a planar connected graph then a0-a1+a2=2, where a0 is the number of vertices, a1 is the number of edges, and a2 is the number of regions. At the beginning of the 20th century Poincare observed (but did not prove) that Euler's formula holds true in a much more general setting. If a space X is divided up into finitely many cells, then the alternating sum over n of the number of n-cells, does not depend on the division. This alternating sum is referred to as the Euler characteristic c(X). The Gauss-Bonnet theorem (known to Gauss but proved by Bonnet in 1848) provides a differential geometric version of Euler's formula. It states that the total curvature of a surface M is 2p c(M). Intuitively this says that the total curvature of a surface embedded in 3-space is independent of the embedding. Of central importance in combinatorial topology is a combinatorial version of the Gauss-Bonnet theorem. In my talk I will state and prove this theorem and will survey applications to group theory and 2-dimensional topology.