Carrying out orders, rookie hitman Ray shoots a priest during confession, but accidentally kills a young boy who is also in church. He and his mentor Ken are sent to Bruges by their employer Harry, where they are to await further instructions. Ken finds the city charming and quaint, while Ray has nothing but contempt for it.
They chance upon a film shoot involving a dwarf actor, which amuses Ray. Ray is attracted to Chloë, a local drug dealer moonlighting as a production assistant. He takes her to a restaurant, where he gets into an argument with a Canadian couple (mistaking them for Americans) and ends up knocking them unconscious. Chloë takes Ray to her apartment where they begin to have sex, but her ex-boyfriend Eirik appears and threatens Ray with a handgun. Ray disarms him and fires the gun, loaded with blanks, in Eirik’s face, blinding him in one eye. Chloë admits that she and Eirik rob tourists, but insists she had told Eirik that Ray was not a target. Ray and Ken spend a debauched night with the dwarf actor, Jimmy, who takes cocaine and rants about a coming war between blacks and whites.
Harry calls Ken and orders him to kill Ray, on the principle that killing a child, even accidentally, is unforgivable. With a handgun supplied by Harry’s local contact Yuri, Ken tracks Ray to a park and reluctantly prepares to kill him. Ray, however, distraught at his killing of the boy, prepares to kill himself with Eirik’s loaded gun. Seeing this, Ken stops Ray, informs him of Harry’s order and tells him to leave Bruges to make a new start elsewhere. He gives Ray some money and puts him on a train to another city, while confiscating his gun to prevent a further suicide attempt. Ken reports the truth back to Harry, who immediately sets out for Bruges, enraged at the disobedience. He picks up a gun at Yuri’s, and Eirik, Yuri’s son, learns of his intention.
On the train, Ray is identified by the Canadian couple he assaulted in the restaurant and is escorted by the police back to Bruges. Chloë bails him out and the two share a drink on the market square beneath the Belfry of Bruges. Harry arrives in Bruges and rushes through the streets towards Ray’s hotel, but spots Ken sitting outside a cafe. As the two have a drink, Harry boasts that if he himself had killed a child, he would have immediately taken his own life. Ken argues that Ray has the capacity to change and deserves a chance at redemption. Harry is unconvinced, so Ken suggests they ascend the bell tower. At the top, Harry pulls his handgun on Ken, but Ken refuses to resist. Confused, Harry cannot bring himself to kill Ken, so he shoots him in the leg as punishment for not killing Ray. Seeing Ray at the square, Eirik climbs the tower to inform Harry, who is helping Ken down the tower. Ken tries to disarm Harry, who shoots him in the neck and rushes down. Bleeding heavily, Ken drags himself back to the top of the tower and jumps into the square. Ray rushes to Ken’s mangled body and learns of Harry’s arrival. Just before he dies, Ken tells him to take his gun, but it has been broken in the fall.
Harry chases Ray to the hotel; Marie, the pregnant owner, refuses Harry entry, even when he draws his gun. To protect the owner and her unborn child, Harry and Ray agree to continue the chase on the canal and Ray jumps on to a passing barge. Harry wounds Ray with a shot from a distance. Ray staggers on to the street where Jimmy’s film is shooting. Harry catches up and repeatedly shoots Ray until he collapses. One of the bullets hits Jimmy (costumed as a schoolboy), blowing his head apart. Harry believes he has killed a child and, despite protest from Ray, kills himself. Ray is carried past Chloë, Marie and Eirik into an ambulance. In narration, Ray reflects on the nature of hell, speculating that it is an eternity in the city of Bruges, and declares that he really hoped he wouldn’t die.