Marathon races are mostly run on roads, or tarmac, but does this mean that you should do the majority of your training on this surface? The answer, in my view, is absolutely not!
Tarmac and concrete are unnaturally hard surfaces, leading to higher reaction forces acting up through your feet, to your ankles, knees, hips and back on every foot strike, leading to greater injury risk.
Training on a more forgiving surface such as grass, sand, trail or country footpath will reduce the impact and therefore the likelihood of falling victim to a running overuse injury. The uneven nature of off-road terrain also places higher demands on your muscles, particularly related to the need to maintain balance, and running on such surfaces requires and develops greater core strength. It might be argued that running on uneven ground is more likely to lead to injuries, but as long as you gradually accustom yourself to the terrain, perhaps by walking or slow jogging, then the increased strength and balance gained should outweigh any risk.
I’m not saying that you shouldn’t do some training on the road, and in practice you will probably have to negotiate some tarmac to get to the cross-country trails, or in the winter months you may have to train after dark, which generally means you have no choice. And in the weeks leading up to your target race, it is important to do some road work to get used to the rhythm that you are looking for on the day. But overall, I strongly believe that, where possible, you should be running on grass, trails or sand for the bulk of your training.