Mushfiqur Rahim (193 runs at 64.33, four catches, one stumping)
Bangladesh's captain was the team's best performer when the pressure reached its apex. In Galle, after he was relieved off wicketkeeping duties, he battled hard in both innings with the bat despite the remaining batsmen faltering. In Colombo he was involved in a crucial partnership with Shakib Al Hasan in the first innings and when Bangladesh needed a chaperone in the 191-run chase, he was there too. His anticipation to catch Niroshan Dickwella's sweep in Colombo was a feather in his cap during the series.
Shakib Al Hasan (162 at 40.50, nine wickets at 39.77)
He scored Bangladesh's only century in the series, which was a very un-Shakib like batting performance for most of his 116 runs. He started off carelessly but tightened up and then played a mix of dominating strokes, while anchoring two different partnerships. With the ball, he had a better time in Colombo than in Galle, delivering spells in which he looked like taking a wicket every over. He was the perfect foil for Mustafizur Rahman in the crucial afternoon session on the fourth day.
Mustafizur Rahman (eight wickets at 27.50)
This was Mustafizur's first Test series since his debut against South Africa in 2015, so there weren't a lot of expectations on his recently-fixed shoulders. But he was the best Bangladeshi bowler on show in both Tests. While the rest of the bowling attack came up short in the first game, Mustafizur was good at attacking the batsmen as well as bowling defensive spells. His cutters started to flow out right and his round-the-wicket angle tested the Sri Lankan right-handers constantly in Colombo. They eventually succumbed to his 'carrot balls' outside off, edging thrice and handing the advantage back to Bangladesh.
Tamim Iqbal (207 runs at 51.75)
Tamim was underwhelming in Galle, following up a confident 57 with a low score. In Colombo, he started similarly with his 49 in the first innings, but it was his 82 in the second that played a major role in Bangladesh's win. He took his time to settle down before a calculated counterattack against Sri Lanka's spinners. Tamim's stability also enabled three Bangladesh half-century opening stands in four innings.
Mehedi Hasan (ten wickets at 35.10)
He was Bangladesh's highest wicket-taker in the Test series, making important breakthroughs and ensuring that he was an attacking option for his captain. Mehedi has to curb his run-rate, which will come with experience but he bowls tight lines against right-handers. At the start of the fourth day, Mehedi's superb off-break removed Upul Tharanga while on the fifth day, his smart pick-up at the stumps completed Dilruwan Perera's important run-out.
Sabbir Rahman (one Test, 83 runs at 41.50)
He was a last-minute inclusion for the Colombo Test, and should have scored more than 42 and 41. He was given a high batting spot, No. 4, which he should have nailed, given his starts. In the second innings, however, Sabbir showed why he is rated highly. He joined Tamim in the counterattack, starting off with a reverse sweep and then crunching drives and cuts in the 109-run second-wicket stand. In the first innings too, he looked positive and continually put pressure on the bowlers.
Soumya Sarkar (195 runs at 48.75)
Sarkar struck three successive fifties, which is a rarity for a Bangladeshi opener, but his highest score of 71 showed that he wasn't prepared to do the hard work after getting starts. When he holed out to mid-off in the fourth innings in Colombo, Sarkar's collection in the series ultimately looked a bit meaningless. But one good thing, at least for the upcoming limited-overs matches, is that Sarkar is in good form. Credit to Sarkar also because of the three decent opening stands he was involved in, with Tamim.
Mosaddek Hossain (one Test, 88 runs at 44.00)
Mosaddek debuted in the Colombo Test and his first-innings 75 was a glimpse of what Bangladesh can expect from him in the season ahead. He will also prompt a major discussion in the selection panel next time Bangladesh play a Test. Mosaddek possesses confidence and doesn't look to do anything that he is not trained to do. His impressive handling of Rangana Herath in both innings was noteworthy.
Liton Das (one Test, 40 runs at 20.00, two catches)
He did a good job as the designated wicketkeeper in the first Test, taking a fine catch to remove Dickwella. He seems like the right choice to replace Mushfiqur behind the stumps, but Liton also needs to get into the mindset of a No. 7 batsman if he is to keep his Test spot in the long-term. Technique doesn't seem to be a major issue at the moment, so a bit of mental adjustment could keep him in the selectors' interests.
Subashis Roy (three wickets at 75.33)
Subashis was a surprise choice as Mustafizur Rahman's foil in the second Test but he mostly held his own. His wicket-taking would depend largely on boring the batsman out. But for that, the team management must be patient with him, given that they seem to be picking horses-for-courses while selecting a new-ball partner for Mustafizur. Subashis gave a decent account of his ability to bowl tightly from one end while others attacked.
Taijul Islam (one Test, two wickets at 39.00)
He was under-bowled in the second innings in Colombo but broke a crucial partnership by removing Rangana Herath. In the first innings he took Dhananjaya de Silva's wicket, also breaking an important 66-run fifth wicket stand. An economical bowler, Taijul will remain Bangladesh's go-to spinner when they are looking for someone to support Shakib and Mehedi.
Imrul Kayes (one Test, 34 runs at 17.00)
In Colombo, he replaced Mominul Haque at No 3, starting well in the first innings but giving it away and triggering a collapse. In the second innings he was unlucky that he got a peach from Herath first ball. He should still be challenging Soumya for the opening slot.
Taskin Ahmed (one Test, two wickets at 54.50)
Taskin took two wickets in Galle but was possibly sacrificed for the Colombo game because of a new rotation policy. The selectors felt that Subashis can offer more control than him, thereby complementing Mustafizur, who is the natural attacker. Taskin also has to introduce his own method of cutting out the boundary balls during the middle and end part of spells. His pace is an asset to this attack, but to be useful with Mustafizur, he would have to bowl a lot better than he did in this series.
Mominul Haque (one Test, 12 runs at 6.00)
This was his worst Test series, but it is too early to say that Mominul Haque's place in the Test team is uncertain. He doesn't get to play a lot of Tests, so he must be given a longer rope than other batsmen. He is a settled No. 3, and although there was enough reason to drop him in Colombo, he must be picked next time.
Mahmudullah (one Test, eight runs at 4.00)
It wasn't a great two weeks for Mahmudullah who lost his place after the first match and was subject to off-field drama before the landmark 100th Test. While he is a strong limited-overs performer, he has to work on his Test approach, which means that he should play a lot of first-class cricket next season.