Four-time champions Sri Lanka thumped newcomers Afghanistan by 129 runs to reach the final of the Asia Cup in Dhaka on Monday.
The Islanders scored a challenging 253-6 with in-form Kumar Sangakkara hitting a solid 76 before they bowled their rivals out for a paltry 124 in 38.4 overs.
Sri Lanka won all their three matches to gain 12 points, leaving them to play a meaningless last game against hosts Bangladesh on Thursday before having a tilt at the title.
Afghanistan, who gave a good account of themselves by beating Bangladesh by 32 runs in their second match, found Sri Lanka's pace-cum spin attack too hot to handle and only captain Mohammad Nabi (37), Asghar Stanikzai (27) and Noor Ali Zadran (21) were among the runs.
Nabi hit a six and three boundaries off 43 balls before he fell leg-before to spinner Chaturanga de Silva in the 33rd over.
Mystery spinner Ajantha Mendis took 3-11 in his seven overs while Thisara Perera chipped in with 3-29 in his full quota of ten overs.
Paceman Suranga Lakmal (2-30) and left-armer de Silva fetched 2-29 to complete the rout.
Only Nabi and Najibullah Zadran (11) could stay longer to put 48 runs for the sixth wicket before Afghanistan lost their last five wickets for a mere three runs.
Earlier, Sangakkara hit six fours and a six off 102 balls to hold the innings together when the batsmen faltered after Angelo Mathews won the toss and decided to bat.
Sangakkara came to the crease after opener Lahiru Thirimanne had gone for five in the sixth over, bowled by paceman Shapoor Zadran.
Fellow opener Kusal Perera scored a 49-ball 33 with four boundaries and a six, while Mahela Jayawardene made 14. But both fell to medium pacer Mirwais Ashraf, who finished with 2-29 in eight overs, to leave Sri Lanka struggling on 83-3.
Sangakkara, fresh from a match-winning hundred against India, added 74 for the fourth wicket with Dinesh Chandimal (26) to put his team on firmer ground.
Sangakkara was run out in the 38th over with Sri Lanka on 158-5, as Afghanistan -- buoyed by their upset win over Bangladesh -- kept the pressure on.
But Mathews provided a late flurry with an unbeaten 45 off 41 balls, adding an unbeaten 69 with Thisara Perera (19 not out) to get his team past the 250 mark.
Afghanistan had brought back Noor Ali and Dawlat Zadran for Karim Sadiq and Hamid Hassan from the line-up, which upset Bangladesh on Saturday, but they failed to keep the momentum.
Pakistan meet hosts Bangladesh on Tuesday and need to win to meet Sri Lanka in Saturday's final.
Defending champions Pakistan have won two of their three matches, beating Afghanistan and India and going down to Sri Lanka.