Controlling the group velocity of an optical pulse typically requires traversing a material or structure whose dispersion is judiciously crafted. Alternatively, the group velocity can be modified in free space by spatially structuring the beam profile, but the realizable deviation from the speed of light in vacuum is small. Here we demonstrate precise and versatile control over the group velocity of a propagation-invariant optical wave packet in free space through sculpting its spatio-temporal spectrum. By jointly modulating the spatial and temporal degrees of freedom, arbitrary group velocities are unambiguously observed in free space above or below the speed of light in vacuum, whether in the forward direction propagating away from the source or even traveling backwards towards it.