Abstract. We discuss the parallelization and object-oriented implementation of Monte Carlo simulations for physical problems. We present a C++ Monte Carlo class library for the automatic parallelization of Monte Carlo simulations. Besides discussing the advantages of object-oriented design in the development of this library, we show examples how C++ template techniques have allowed very generic but still optimal algorithms to be implemented for wide classes of problems. These parallel and object-oriented codes have allowed us to perform the largest quantum Monte Carlo simulations ever done in condensed matter physics.