We perform hydrodynamical simulations of minor-merger-induced gas sloshing and the subsequent formation of cold fronts in the Virgo cluster. Comparing to observations, we show for the first time that the sloshing scenario can reproduce the radii and the contrasts in X-ray brightness, projected temperature and metallicity across the cold fronts quantitatively. The comparison suggests a third cold front 20 kpc north-west of the Virgo core. We identify several new features typical for sloshing cold fronts: an alternating distribution of cool, metal-enriched X-ray brightness excess regions and warm brightness deficit regions of reduced metallicity; a constant or radially decreasing temperature accompanied by a plateau in metallicity inside the cold fronts; a warm rim outside the cold fronts and a large-scale brightness asymmetry. We can trace these new features not only in Virgo, but also in other clusters exhibiting sloshing cold fronts. By comparing synthetic and real observations, we estimate that the original minor-merger event took place about 1.5 Gyr ago when a subcluster of 1–4 × 1013 M⊙ passed the Virgo core at 100–400 kpc distance, where a smaller mass corresponds to a smaller pericentre distance, and vice versa. From our inferred merger geometry, we derive the current location of the disturbing subcluster to be about 1–2 Mpc east of the Virgo core. A possible candidate is M60. Additionally, we quantify the metal redistribution by sloshing and discuss its importance. We verify that the subcluster required to produce the observed cold fronts could be completely ram-pressure-stripped before reaching the Virgo centre, and discuss the conditions required for this to be achieved. Finally, we demonstrate that the bow shock of a fast galaxy passing the Virgo cluster at ∼400 kpc distance also causes sloshing and leads to very similar cold front structures. The responsible galaxy would be located about 2 Mpc north of the Virgo centre. A possible candidate is M85.