The 30-year-old stylish left-hander hit as many as 16 boundaries for his seventh one-day hundred to propel the defending champions to huge 357/9 in 50 overs. Sanath Jayasuriya blazed away with 47-ball 72 while Kapugedera hit a strokeful 74.
In reply Bangla were restricted to 226/7, thanks to some turtle-esque batting from Bangla top-order and middle-order batters and to probing bowling from veteran Lankan bowlers Murali (2/37), Vaas (1/16) and Jayasuriya (1/22).
Bangla chasing a mammoth target got off to a bad start and never recovered. They lost Nazimuddin for one to Chaminda Vaas in the third over and captain Mohd Ashraful (8), who was unlucky to be given out caught down the leg side off Dilhara Fernando at a total of 35 in the 10th over.
Tamim Iqbal lived a charmed life as Lanka dropped three catches in quick succession but he was eventually bowled by Kulasekera for 28 from 40 balls to leave Bangladesh on 3 for 48.
Raquibul Hasan (35) and Mushfiqur Rahim (44) revived the innings with a plucky stand of 78 from 90 balls but it was not enough to stave off defeat.
Off spinner Muttiah Muralitharan dismissed both. He had Hasan stumped and caught and bowled Rahim who hit two fours in his 53 balls knock.
Alok Kapali played a hand of 30 from 37 balls but the fight had gone out of the innings at 5 for 135 which became 6 for 142 when Mahmudullah (4) was bowled by Jayasuriya.
Sangakkara and Jayasuriya shared a 116-run stand for the opening wicket as the Islanders went on the rampage right from the word go.
Both the left-handers matched each other stroke for stroke as Sri Lanka completed 100 runs by the 14th over before left-arm spinner Abdur Razak ended Jayasuriya's innings, bowling him with a straighter one.
Jaysauriya hit ten boundaries and three sixes during his fiery 47-ball knock.
Sanga, who hit five boundaries in Dolar Mahmud's third over, added 54 runs for the second wicket skipper Mahela Jayawardene but so one-sided was his domination during the partnership that his skipper managed just six.
Sanga finally holed out off medium pacer Mahmudullah Riyad in the 28th over and passed the baton to Chamara Kapugedera who smashed a 67-ball 74.
Kapugedera and Chamara Silva (19) added 53 more runs for the fourth wicket before Bangladesh stopped the run rampage, taking three wickets in the space of 33 runs.
Kapugedera hit five boundaries and two towering sixes.
Left-arm spinner Abdur Razzak finished with 3/55. Mahmud conceded 49 runs off just three overs.