A safety car when Valtteri Bottas spun into the gravel on lap nine saw most drivers dive in for new slick tyres to take advantage of a rapidly drying track.
Verstappen took a lead that he would not relinquish when the safety car ended, swooping past Antonelli and Russell and quickly opened a comfortable gap.
Hamilton started on the front row on dry tyres and quickly slid down the field in the wet conditions.
But the seven-time world champion used all his experience to work his way back through the field for a brilliant podium place as the surface dried out.
His teammate Charles Leclerc was fourth with Red Bull’s Isack Hadjar in fifth.
The Bahrain Grand Prix was being raced in Malaysia due to disruption in the Gulf linked to the US-led war with Iran.
Formula One moves on to nearby Singapore for a night race and sprint next weekend.

