The Mercedes driver made the most of an upgraded Mercedes W13 to challenge Ferrari for the race win at Silverstone and eventually come home on the podium in third.
But despite running third behind Charles Leclerc and eventual race winner Carlos Sainz before the final safety car restart, Hamilton was unable to capitalise on the opportunity and push for the top spot.
Instead, Sainz went through for the lead to take his maiden F1 win, and Hamilton fell back behind Red Bull's Sergio Perez,– who made the most of a straightline speed advantage to move up from fourth.
Hamilton later was able to take Leclerc to finish third after a thrilling fight for the final podium spot.
Although Hamilton led the race, and had a tyre offset before the safety car that could have allowed him to stage a late push for the win, Hamilton explained afterwards that his Ferrari rivals had the ultimate edge.
"I gave it everything today," he said afterwards. "I was trying to chase down those Ferraris, but congratulations to Carlos. They were just too quick today for us.
"In the end I was in amongst that battle with Checo [Perez].
"Those guys were just too quick on the straights for me today. But I'm so, so grateful for the hard work all the team did to get an upgrade here. We've made a step closer to them. So we've got to keep pushing."
Hamilton said he pushed as hard as he could to take the fight to Ferrari at the end, but reckons Red Bull's top speed advantage, which has been a characteristic all season, was the trigger for him losing out to Perez.
"I was chasing and chasing and chasing, and the pace was great on both sets of tyres," he added.
"But at the end there, it was just a little bit difficult. Once you get a Red Bull behind you, they are so fast on the straights. So we've got some improvements to make.
"But this is a huge bonus for us to be on the podium. I am glad everyone was safe from the big crash at the beginning of the day."
He added: "We are going to continue to push. Let's keep trying to be the best we can."