The type of surface you run on impacts the forces exerted on your body. Obviously, the harder the surface, the more stress is placed on your joints. Surfaces like concrete and pavement are so rigid that when your feet hit the ground, there is a lot of shock coming into your heels. Running on dirt, grass and tracks will soften the impact, but still give you enough firmness to make running safe.
People also can cause injury to themselves if they run on terrain that is too uneven or irregular, such as trails and sand. For those of you who have run on sand before, you understand how hard your feet and legs have to work. The softer the sand, the more this effect is exaggerated. When your feet and legs have to constantly adjust to the changing terrain, the muscles and joints are working much harder than you may realize. This means you can strain a muscle or cause injury if you are not careful. I am not saying to never run on sand - just run on the part that is closest to the water so that the ground is a bit firmer to support your body while running.