|Elizabeth Hurley as Isabella, Lady Farthingdale|
In 1813, a band of deserters, British, French, and others, led by Sharpe's nemesis Obadiah Hakeswill (Pete Postlethwaite) and a French renegade named Pot-au-Feu (Tony Haygarth), takes over a Portuguese village. Lady Isabella (Elizabeth Hurley), the wife of Sir Augustus Farthingdale (Jeremy Child), the English military envoy to Portugal, is taken captive. The brigands demand a ransom for her and for another lady taken earlier, Sarah (Helena Michell), the spouse of French Colonel Dubreton (François Guétary).
Sharpe delivers the money for Lady Isabella, while Dubreton does the same for his wife. Sarah mysteriously recites a verse of poetry. Hakeswill demands double the amount and gives each man five days to deliver the second installment. When Sharpe returns to camp, Wellington (Hugh Fraser), the British commander, decides that drastic action is required to discourage desertion before it can infect the rest of his army.
Sharpe also reports seeing a Major Ducos (Féodor Atkine), who accompanied Dubreton. This worries Major Nairn (Michael Byrne), the head of Wellington's military intelligence. He suspects that Ducos, his French counterpart, is scouting the route for a French invasion of Portugal. The village happens to be directly in the most likely path.
Sarah's poem conceals a clue to the captives' whereabouts. Sharpe comes up with a risky plan to rescue the women. When Farthingdale objects by quoting regulations that a major must lead a detachment of this size, Wellington presents him with a letter from the Prince Regent, who has followed Sharpe's exploits with admiration, promoting Sharpe to major.
Sharpe then sneaks into the village with Sergeant Harper (Daragh O'Malley) and his "chosen men" on Christmas Eve, when the enemy is drunk and distracted, and frees the captives. While they wait for Captain William Frederickson (Philip Whitchurch) to bring up his company of the 60th Rifles, it is revealed that Lady Isabella had been a whore, and at one time Sharpe's lover. With time on their hands, they resume their sexual relationship.
The battle goes almost as planned. The deserters are killed or captured, except for Hakeswill, who escapes. He runs into Sharpe's wife Teresa (Assumpta Serna), who had been scouting the approaching French force. Hakeswill kills her, but is then caught by Dubreton, who hands him over to Sharpe.
Ducos delivers an ultimatum, demanding the surrender of the village. Sharpe refuses. When Farthingdale tries to negotiate, Sharpe stops him by threatening to reveal Isabella's past to the Lisbon court. The French attack, outnumbering the British 10 to 1, but fall into Sharpe's trap and are repulsed with rocket artillery. Afterwards, Hakeswill is executed by firing squad.