Sri Lanka Airlines flight UL605 took off from Tullamarine about 6.30pm on Monday headed for Colombo but hit trouble less than half an hour into the flight.
Passengers saw and smelled smoke in the cabin and coming from the cockpit, sparking an announcement from the captain, who revealed they would have to circle back to Melbourne.
The Airbus A330-343 was forced to circle for some time but eventually touched down about 7.20pm.
Aviation YouTuber Dennis Bunnik praised the flight crew's handling of the incident but some passengers were left frustrated by the delays that followed.
"I could feel about 30 minutes out of Melbourne that we were starting to descend and the captain made the announcement, 'prepare for landing'," Bunnik said.
"We circled around for a while. Everybody was pretty calm on board, very calm.
"The air side of everything worked well, the emergency vehicles, all of that part worked really well."
Bunnik, who started the evening with a glass of champagne on board and ended it dropping his duty free while waiting for more details, said things could have been handled better in the airport.
"It's taken a good couple of hours to sort of work out what's happening, whether we could fly through on to Sri Lanka tonight or whether we needed to go to hotels," he said.
"Bit of confusion, but eventually it was decided we're staying in Melbourne."