He was rescued on Sunday night around 10.45 pm, Dewas district Superintendent of Police Anshuman Singh told PTI over phone from Umaria village in the district.
Roshan fell into an uncovered borewell while playing in a field in the village around 11 am on Saturday morning.
As an Army team was roped in to rescue him, a race against time began as he was stuck 30 feet below the surface.
He was given fluids through a pipe and oxygen was pumped into the borewell, the senior police officer said, adding that throughout the operation, his parents kept talking to Roshan, to which he responded.
The rescuers earlier planned to pull him out by digging a parallel trench and then connecting it with the borewell through a tunnel, the police said.
As an alternative, a rope with a noose was dropped into the borewell, and the boy was asked to tighten the noose around his arm so that he could be pulled out.
The boy, showing remarkable composure, followed the instructions and was then pulled out successfully, the police officer said.
He has been taken to a nearby hospital for a check-up, the police added.
Get the latest election news, live updates and election schedule for Lok Sabha Elections 2019 on ndtv.com/elections. Like us on Facebook or follow us on Twitter and Instagram for updates from each of the 543 parliamentary seats for the 2019 Indian general elections.