Alcohol-soaked farmer Ted Narracott (Peter Mullan) pays over the odds for a foal called Joey to spite landlord Lyons (David Thewlis) when he is supposed to be buying a plough horse.
Long-suffering wife Rose (Emily Watson) despairs, wondering how they will pay the rent, while son Albert (Jeremy Irvine) promises to train the animal to work the fields.
When Europe goes to war, Ted sells Joey to Captain Nicholls (Tom Hiddleston), who promises to take good care of the mount.
Albert subsequently learns of tragedy on the battlefield and enlists in the army with best friend Andrew (Matt Milne) to track down Joey and return the horse to the farm.
Meanwhile, behind enemy lines, Joey is captured by the Germans and embarks on a momentous journey in the company of a young soldier called Gunther (David Kross) and a French girl (Celine Buckens) and her grandfather (Niels Arestrup).