Sarkar was born in Satkhira to a Bengali Hindu family. He was named Soumya Shanto but later the word 'Shanto' was dropped from his name. On 27 February 2020, Sarkar married his long-time girlfriend Priyonti Debnath Puja. The marriage ceremony was held at Khulna Club. His wife, 19-year-old Puja, is the daughter of Gopal Debnath of Tutpara village in Khulna.
In November 2013, he was included in Bangladesh's T20 squad for a one-off game against New Zealand, but did not find a place in the final XI. Sarkar was included in the squad for Bangladesh's home series against Zimbabwe and made his debut in the final ODI in December 2014. He was subsequently named in the 2015 World Cup in Australia-New Zealand. He made his One Day International debut for Bangladesh against Zimbabwe on 1 December 2014. Soumya's first one-day international ton was against Pakistan at Sher-e-Bangla National Cricket Stadium.
2015–2019
He represented Bangladesh in the 2015 Cricket World Cup. Soumya Sarkar holds the record along with Mohammad Kaif and Umar Akmal for taking the most catches in a single World Cup match. Sarkar made his Twenty20 International debut for Bangladesh against Pakistan in April 2015. On 22 April 2015, Sarkar hit his maiden ODI hundred and added 145 with Tamim Iqbal. He made his Test debut against Pakistan in April 2015. Soumya Sarkar also played in Bangladesh's 100th Test match, where they defeated Sri Lanka on their home soil. He played a key role in that historic Test match, scoring 61 in the first innings and taking five catches, the most by any player for Bangladesh in a single Test match. Sarkar also set the record for taking the most catches for Bangladeshi in a Test innings. In 2019, Soumya scored his maiden Test century against New Zealand at Seddon Park equaling Tamim Iqbal's record who also scored a century in 94 balls against England at Lord's in 2010. In April 2019, he was named in Bangladesh's squad for the 2019 Cricket World Cup. On 24 June 2019, in the match against Afghanistan, Soumya played in his 50th ODI. In November 2019, he was named in Bangladesh's squad for the 2019 ACC Emerging Teams Asia Cup in Bangladesh. He was adjudged player of the tournament. Later the same month, he was named in Bangladesh's squad for the cricket tournament at the 2019 South Asian Games. The Bangladesh team won the gold medal, after they beat Sri Lanka by seven wickets in the final.
2020-present
In February-March 2020, he did not feature in the Test and ODI series when Zimbabwe toured Bangladesh due to his marriage. But he was included in the two-match T20I series. In the first T20I he scored 62 off 32 balls, his highest individual score in T20I, helping Bangladesh to win the match by 48 runs.