We prove the Fundamental Gap Conjecture, which states that the difference between the first two Dirichlet eigenvalues (the spectral gap) of a Schrödinger operator with convex potential and Dirichlet boundary data on a convex domain is bounded below by the spectral gap on an interval of the same diameter with zero potential. More generally, for an arbitrary smooth potential in higher dimensions, our proof gives both a sharp lower bound for the spectral gap and a sharp modulus of concavity for the logarithm of the first eigenfunction, in terms of the diameter of the domain and a modulus of convexity for the potential.