We present a new algorithm for efficiently computing the N-point correlation functions (NPCFs) of a 3D density field for arbitrary N. This can be applied both to a discrete spectroscopic galaxy survey and a continuous field. By expanding the statistics in a separable basis of isotropic functions built from spherical haonics, the NPCFs can be estimated by counting pairs of particles in space, leading to an algorithm with complexity $ {O}(N_math{g}2)$ for Ng particles, or $ {O}(N_math{FFT}log N_math{FFT})$ when using a Fast Fourier Transfo with NFFT grid-points. In practice, the rate-limiting step for N > 3 will often be the summation of the histogrammed spherical haonic coefficients, particularly if the number of radial and angular bins is large. In this case, the algorithm scales linearly with Ng. The approach is implemented in the encore code, which can compute the 3PCF, 4PCF, 5PCF, and 6PCF of a BOSS-like galaxy survey in $100$ CPU-hours, including the corrections necessary for non-unifo survey geometries. We discuss the implementation in depth, along with its GPU acceleration, and provide practical demonstration on realistic galaxy catalogues. Our approach can be straightforwardly applied to current and future data sets to unlock the potential of constraining cosmology from the higher point functions.