David Carr is unemployed. He is a member of the British Communist Party and lives in Liverpool, but he leaves so that he can go to Spain to join the International Brigades, military units formed specifically to fight against fascism during the Spanish Civil War. When he crosses the border he is met by a representative of the Workers' Party of Marxist Unification - or POUM for short. He meets his commander, Lawrence, and ends up in a militia that is sent to the Aragon front, an autonomous region sin the north east of Spain.
In POUM militias, men and women of all ages fight together. David meets Maite, a young soldier with too much enthusiasm and not enough knowledge. David settles in and begins to meet people like himself from other European nations. He strikes up a friendship with a French man named Bernard, and meets an Irishman named Coogan. David finds himself falling in love with Blanca, Coogan's Spanish girlfriend; she is a POUM member and also the person responsible for reminding them of POUM's ideology.
David is wounded and taken to hospital in Barcelona. He defies Blanca's wishes and advice, and joins the International Brigades, which had been his plan in the first place. They are backed by the government and he feels he might be safer there; however, he is unable to cope with the constant anti-POUM propaganda put around by Soviet forces and operatives. He decides to return to his former POUM company but when he does so, he sees that they are being rounded up by the government. They are told to surrender, but there is a clash when they refuse to do so, and Blanca is killed. He stays in Spain for her funeral, but returns to Liverpool clutching a red bandana filled with Spanish soil.
The film ends with David's own funeral; he dies shortly after telling his granddaughter the story of his life, and as his coffin is lowered into the ground she throws his Spanish soil on top of it. She then reads aloud from he poem The Day is Coming by William Morris.