The future of scientific computing will require not only that a single problem be solved accurately and rapidly, but that an entire sequence of problems be solved, with varying geometry, material parameters, etc. Two trends over the last twenty years have allowed problems to be addressed which were previously thought to be intractable. First is the advance in high-performance computing environments (multi-core CPUs, GPUs, and distributed architectures). Second, and equally important, is the development of numerical methods that allow for a vast increase in the number of degrees of freedom which can be considered. In this talk, I will give an overview of the analytical and numerical foundations of methods that will permit the construction of fast, high-order accurate, and robust methods that can be used in a variety of problems in science and engineering. Critical issues include the derivation of well-conditioned formulations for the governing problems, high-order geometry representations, accurate quadrature rules for singular functions, and suitable fast algorithms. I will touch on the application of these techniques to problems drawn from classical mathematical physics, including acoustics, elasticity, electromagnetics, and heat flow.