Use a stretched Slinky to model sound waves moving through a material.
When you squeeze the Slinky's coils together at one end (compression), this causes the coils in front of them to spread out (expansion). When the squeezed coils are released they spread out and squeeze the coils in front of them together. The squeezed coils in turn move forward, pushing on the coils in front of them and so on.
Squeezing the end coils gave them energy that was transferred from one end of the slinky to the other. As the energy goes through the Slinky, all the coils do not move at once, some of the coils are crowded together and some are spread apart.