It was Bangladesh's first win in the game's long form against a full-strength major Test-playing country.
It was also only the eighth Test victory in 95 matches since the country secured Test status in 2000.
As teenage spinner Mehedi Hasan dismissed Steven Finn to level the two-Test series 1-1, joyful fans waved national flags and shouted slogans to mark the historic occasion.
"Thousands came out on the streets to celebrate victory," said Mahbub Hassan, police chief of Dhaka's Mirpur neighbourhood where the match took place.
More From This Section
Flag-waving fans flashed victory signs as they marched through the streets.
Supporters also staged processions in the port city of Chittagong where the first Test was played, local police chief Jashim Uddin said.
Prime Minister Sheikh Hasina, who is also a cricket fan, congratulated the players, coach and officials.
"The whole nation is proud of seeing the team spirit of our players and their tremendous performance," her spokesman Ihsanul Karim quoted her as saying.
Social media was flooded with thousands of comments.
"The teenage wonder-boy has given us first win over England! So this is party time!" Facebook user Ahsan Al Mahbub wrote in reference to Mehedi.
Facebook user Mainul Islam Rahat recalled, in reference to Bangladesh's underwhelming performances in their early years, that Test matches used to end in their defeat within three days.
"But nowadays, we have levelled up to the driver's seat!"
Shakib Al Hasan's salute after sending Ben Stokes back to the pavilion went viral as thousands of supporters posted photos imitating him.