Lance Corporal Stephen "Hannibal" Brooks is a British prisoner of war who is put to work in Munich zoo, looking after an Asian elephant called Lucy. When the zoo is bombed by the Americans, the zoo's director decides it is unsafe for the elephant to remain there. So he sends Brooks along with hostile German soldier Kurt, a friendly German soldier named Willi, and Vronia, a female cook to accompany the elephant to Innsbruck Zoo via a train.
They are forced to walk when Standartenführer von Haller, an SS officer tells Brooks that the elephant is not allowed on the train. In Austria, Kurt threatens to shoot Lucy while drunk and Brooks accidentally kills Kurt. Brooks, Lucy, Willy and Vronia are forced to run towards the Swiss border. They are helped along the way by an American escapee named Packy who has formed a group of partisans to fight the Germans in Austria, after many run-ins with the Nazis. Half way there, Lucy gets mumps, so Brooks finds an Austrian doctor to look after her, while Vronia and Willy run to Willy's parents' house. Vronia and Willy are captured, and are later joined by Brooks. Brooks and Willy are rescued by Packy and continue to race towards Switzerland with Lucy. Unfortunately, along the way Willy is shot by the Nazis while helping Brooks to escape.
When Brooks gets close to the border with Lucy, he is met by von Haller, who tells him to walk to Switzerland and Vronia, who has changed sides after being captured. Von Haller proposes the three go together to Switzerland as he intends to defect due to Germany's deteriorating military position. They are joined by Packy and his partisans near a German border post. The plan is to use von Haller to bluff their way through, however, he betrays them. Vronia tries to warn the others and is shot in the back. After another long fight with the Germans, Brooks and Lucy eventually get to Switzerland with Packy and his remaining partisans.