While Ms Sahu secured 102,871 votes, Bharatiya Janata Party's Mr Panigrahi got 60,938 votes. Congress candidate Pranaya Sahu was a distant third with 10,274, said Returning Officer Tapiram Majhi.
The BJD won a staggering 56 per cent of the polled votes, while the BJP won 33.53 per cent and the Congress a mere 5.65 per cent, said Mr Majhi.
The Bijepur result assumes significance, particularly for the BJD, BJP and the Congress as it is seen as a precursor to the 2019 general elections.
The results proved that the popularity of Chief Minister Naveen Patnaik remains intact despite an aggressive campaign by the BJP, which failed to capitalise on its advantages from the panchayat polls.
The BJP had swept the Zilla Parishad polls in Bargarh district in 2017.
On the other hand, the Congress party, which won the assembly seat the last three times, was completely decimated in the by-election.
Celebrations erupted at the BJD party headquarters in Bhubaneshwar. Party workers were seen dancing and bursting firecrackers following the victory of their candidate.
BJD president and Odisha Chief Minister Patnaik said a victory by more than 40,000 votes will have an impact on future elections.
"I am humbled by love and trust of the people of Bijepur for giving BJD a massive victory. BJD lives in the hearts of the people of Odisha. Our people are peace loving and have rejected the politics of hatred and violence," said Mr Patnaik.
"I thank each and every BJD worker who has worked hard for this. We will continue our efforts to build a prosperous and empowered Odisha. Jai Jagannath," he tweeted.
BJP legislature party leader KV Singdeo conceded defeat.
"We need to do our introspection over the defeat in the Bijepur bypoll and move forward," said Mr Singhdeo.
The byelection was held on February 24 in which around 82 per cent of the voters had exercised their franchise. It was necessitated following the death of Congress MLA Subal Sahu in August 2017.
Mr Sahu's widow Rita Sahu contested the byelection as the ruling BJD candidate and won.
Mr Panigrahi had won the Bijepur seat in 2000.
Though as many as 13 candidates were in the fray for the assembly seat, the high voltage fight was primarily seen as a triangular contest between the ruling BJD, BJP and Congress.