The short answer is yes, it travels at exactly c in vacuum.
In a non-vacuum where the speed of light is said to be c/n, this is a picture which only applies if you can't see what is happening on the microscopic scale. On the microscopic scale, a non-vacuum is actually a lot of vacuum with some atoms or other particles in it. When a photon scatters off a small lightweight particle, it is slightly delayed by the interaction. In a uniform medium, the interactions with atoms happen the same number per unit length for every unit length, so the wave is delayed the same amount in each unit length so it is "as if" the photon was slowed down to c/n. In fact, the photon is still traveling at c between atoms, and is experiencing time delays in its motion as it scatters off the atoms in the medium.