The McLaren driver took the lead from Ferrari poleman Charles Leclerc off the line and controlled the first half of the race.
But he was eventually passed by race winner Max Verstappen on lap 28, before Lewis Hamilton also made it by to take second place for Mercedes.
It marked Norris’s fourth consecutive grand prix podium, repeating his third-place finish last time out in Qatar.
Norris blamed the high degradation and temperatures for his struggles: “Yes, just leading the race. I could control it a lot, but just not enough today.
“But I'm happy. It was a good race for my side.
“We knew our struggles, we knew what was going to be difficult today. And it was just the degradation but the pace over the first 10 laps of every stint, the pace in the beginning was strong.
“I just couldn't hold on long enough. So we're getting there. Progress, progress every weekend. Just some more steps needed.”
The McLaren driver put up an aggressive defence against Hamilton, who used DRS to attack and then nip past at the exit of Turn 1. Ferrari's
Carlos Sainz had looked set to close on Norris in the closing stages, but the Ferrari driver eventually finished 4.4s adrift.
Norris added: “I had to try, right? But I just couldn't do it. I didn't have enough tyres left at the end, you saw how quickly he pulled away at the end. So you know, I always had to look after my own race.
“I did the best I could. I had to push and look after the tyres, and it was just too difficult today. So maybe if it was a cooler track it would have suited us a little bit more but it wasn't. But I'm still happy.
“The team have done an excellent job to finish on the podium here. It was better than we were expecting coming into the weekend. So very happy.”