Nineteen-year-old Danny Flynn is imprisoned for his involvement with the I.R.A. in Belfast. He leaves behind his family and his sixteen-year-old girlfriend, Maggie Hamill. Fourteen years later, Danny is released from prison and returns to his old working class neighborhood to resume his life as a boxer.
Former Irish pugilist & Provisional IRA member Danny Flynn (Daniel Day-Lewis) returns home to Belfast from a 14-year stint in prison at the age of 32. Weary of the unbroken cycle of violence in Northern Ireland, he attempts to settle down and live in peace. After meeting his drink-sodden old trainer Ike (Ken Stott), Danny starts up a non-sectarian boxing club for boys in an old gymnasium. While fixing up the old building, however, he runs across a cache of Semtex hidden underneath the stage. He throws the cache into the river.
Danny’s action infuriates Harry (Gerard McSorley), a bitter and ruthless IRA lieutenant. Harry feuds with Danny, assassinating the kindly police officer who donates equipment to the boxing club. The murder causes a riot at one of Danny’s boxing matches. During the riot, the gymnasium is burned down by Liam, the young son of Maggie, who thinks Danny and his mother are going to elope.
Danny has been reconnecting with an old flame, Maggie (Emily Watson), now married to an imprisoned IRA man and required by IRA code to remain faithful to him. Their relationship dominates much of the film. Harry sees Danny and Maggie’s relationship as a way to undermine the authority of her father, Joe Hamill (Brian Cox), the grim but war-weary IRA local commander who is working for peace.
Eventually, Harry and some other IRA men kidnap Danny and take him away to be executed. Then, in a last-minute twist, the IRA gunman shoots Harry instead of Danny, thus eliminating a rogue agent. Maggie with Liam her son in the car pick up Danny and they all drive home together…