What is the difference between a translation and a Galilean transformation?
In a Galilean transformation: $$ x’=x-V_x t,\qquad y’=y-V_yt\, ,\qquad z’=z-V_z t\, ,\qquad t’=t $$ whereas in (spatial) translation $$ x’=x-r_x\, ,\qquad y’=y-r_y\, ,\qquad z’=z-r_z\, ,\qquad t’=t\, . $$ The Galilean transformation depends explicitly on the relative velocity $\vec V$ and the time $t$: for different $t$’s you add a different vector $\vec V t$, whereas the simple translation adds a fixed time-independent vector $\vec r$ to each coordinate.
Since the bit you add in the Galilean transformation is time-dependent, it affects how velocities transform: $$ \vec v’=\vec v-\vec V $$ whereas, for a simple translation, $\vec v’=\vec v$ since there is no time-dependence on the shift in position.
A Galilean transformation is a translation per unit time: whereas a translation just displaces all space by some vector, a Galilean transformation displaces space by some vector that is different at different moments in time. More precisely, it depends linearly on time.
If you've encountered spacetime diagrams before: on an (x, t) spacetime diagram, a translation would just be shifting the whole of the diagram to the right or to the left, whereas a Galilean transformation involves skewing the diagram.
A Galilean transformation (or “Galilean boost”) is a change to a second inertial reference frame that is moving with constant velocity relative to the first one, but where the origin and axes align, so there is no translation at $t=0$ and no rotation at any time.
Imagine a bicyclist passing by you. His frame is boosted from yours. Yours is boosted from his, in the opposite direction.
Galilean boosts are the Newtonian equivalent of Lorentz boosts in Special Relativity.
In a translation, the frames do not have any relative motion. They just have different origins (but aligned axes).