The problem of enumerating spanning trees on graphs and lattices is
considered. We obtain bounds on the number of spanning trees $N_{ST}$ and
establish inequalities relating the numbers of spanning trees of different
graphs or lattices. A general formulation is presented for the enumeration of
spanning trees on lattices in $d\geq 2$ dimensions, and is applied to the
hypercubic, body-centered cubic, face-centered cubic, and specific planar
lattices including the kagom\'e, diced, 4-8-8 (bathroom-tile), Union Jack, and
3-12-12 lattices. This leads to closed-form expressions for $N_{ST}$ for these
lattices of finite sizes. We prove a theorem concerning the classes of graphs
and lattices ${\cal L}$ with the property that $N_{ST} \sim \exp(nz_{\cal L})$
as the number of vertices $n \to \infty$, where $z_{\cal L}$ is a finite
nonzero constant. This includes the bulk limit of lattices in any spatial
dimension, and also sections of lattices whose lengths in some dimensions go to
infinity while others are finite. We evaluate $z_{\cal L}$ exactly for the
lattices we considered, and discuss the dependence of $z_{\cal L}$ on d and the
lattice coordination number. We also establish a relation connecting $z_{\cal
L}$ to the free energy of the critical Ising model for planar lattices ${\cal
L}$.