3D continuum radiative transfer is one of the remaining grand challenge problems in computational astrophysics. Yet it is key to understanding the three-dimensional structure of astronomical objects for which we can observe only two-dimensional projections on the plane of the sky. We present SKIRT, a Monte Carlo code designed to treat 3D continuum radiative transfer problems in dusty systems. It has been used to study the effects of dust absorption, scattering and emission on the observed properties of galaxies, circumstellar discs and AGNs. The code can handle arbitrary geometries and different dust mixtures, even at large optical depths and/or including very small grains. We present a number of recent computational techniques that have been instrumental in making the code fast and reliable, even for complex geometries. We also show some recent 3D simulations to highlight the possibilities of modern radiative transfer codes.