The possibility that Schrödinger's equation with a given potential can separate in more than one coordinate system is intimately connected with the notion of superintegrability. Examples of this type of system are well known. In this paper we demonstrate how to establish a complete list of such potentials using essentially algebraic means. Our approach is to classify all nondegenerate potentials that admit a pair of second-order constants of motion. Here 'nondegenerate' means that the potentials depend on four independent parameters. This is carried out for two-dimensional complex Euclidean space, though the method generalizes to other spaces and dimensions. We show that all these superintegrable systems correspond to quadratic algebras, and we work out the detailed structure relations and their quantum analogues.