Match officials declared the game abandoned at 9pm local time (1500 GMT) as the rain showed no sign of stopping — making it impossible to hold even a curtailed-over game.
The trophy was shared between the two teams after the wash-out.
It means hosts Bangladesh got a hand on the trophy of a Twenty20 tournament involving more than two teams for the first time in their history.
The wash-out also rounded off a mixed tournament for both teams as Bangladesh won three of their four matches in the league phase, while Afghanistan won their first two matches before losing the next two.
“Disappointing that we didn’t get any match today. It was a very important final. We didn’t play our best cricket in this tournament but leading up to the final we played some good cricket,” Bangladesh captain Shakib Al Hasan said.
Afghanistan captain Rashid Khan hailed the fans who waited in the gallery, defying the rain and hoping for some action.
“The crowd we had today was amazing. We wanted to have a game today. I think it was incredible performance from the guys. So unlucky that we didn’t get the match today,” he said.
Afghanistan’s Rahmanullah Gurbaz was named player of the tournament for making 133 runs in four innings.
Zimbabwe were the other team of the tournament.