Mercedes driver Nico Rosberg finally struck back against his so-far dominant teammate, taking an easy Spanish Grand Prix win at the Circuit de Catalunya.
The German was never under threat after he converted pole-position to a good lead in the opening laps.
Sebastian Vettel and Ferrari tried to out-strategise Hamilton's side of the Mercedes garage but had to settle for third.
Daniel Ricciardo suffered a mostly-awful weekend, but things improved on Sunday for a points finish, albeit a lap down.
PRACTICE AND QUALIFYING
Nico Rosberg started the European leg of the season in a much better humour, heading practice sessions while Hamilton struggled, wiht a lurid spin in FP3 ruining a set of tyres.
Raikkonen also failed to get a good run in either practice or qualifying, his teammate getting a much better run.
Rosberg took pole to press home his advantage, with Hamilton second and Vettel third.
Red Bull handed their drivers a miserable Friday and Saturday, with Ricciardo barely running at all before qualifying tenth behind Massa and Kvyat.
The McLarens reached a milestone, both cars making it into Q2.
Sunny Spanish skies greeted the grid but Hamilton's start wasn't sweetness and light. The Brit got a poor start and was passed by Vettel's Ferrari before the braking zone.
Valtteri Bottas tried his luck but the Mercedes driver held him back to fourth.
Almost immediately, the Lotus of Grosjean was in trouble having made contact with Pastor Maldonado in an unintended nod to sponsor Mad Max: Fury Road.
Daniel Ricciardo, who had dropped a couple of places quickly capitalised and starting moving forward, picking up Maldonado and the two Toro Rossos into the bargain.
While the Red Bull B-team had done well in qualifying, they suffered in the race with too much tyre-saving downforce. Ricciardo's beleagured Red Bull was able to blow by the two younger drivers although a move on erstappen on lap 11 saw him re-passed by Verstappen.
Hamilton's pitwall, heeding their driver's complaints of not being able to stay close to the Ferrari, switched strategies from what was an expected two stop to three.
Rosberg's good start was working very well for the German, collecting fastest laps and reporting good balance.
Raikkonen settled in to fourth having passed the Williams of Bottas.
The first of the three-stoppers came in lap 12, Button and Hulkenberg. The three stop strategy was only marginally different to the two-stop timings, but for these two drivers it was unlikely to have a hugely positive effect.
Hamilton was informed by his team to pick up the pace on lap thirteen in preparation for a stop. The service took much longer than it should have with a sticky left rear. The delay dropped him behind Maldonado who he quickly passed.
Ricciardo pitted on the same lap and Hamilton's main competition, Vettel, came in a lap later, returning to the track in front of the Mercedes with an extended lead. Rosberg came in yet another lap later on lap fifteen.
The German's stop was faultless and he returned to the track behind Raikkonen and a long, long way ahead of Hamilton.
Maldonado pitted on lap sixteen to have a flapping chunk of rear wing removed, a result of the contact with Grosjean. He fell to eighteenth.
Hamilton and his pitwall conducted an extended conversation about their strategy options, with little to offer apart from a hard-fought second place.
The Mercedes driver began to close in on Vettel who began to go defensive. The Ferrari didn't have the overall grip of the Mercedes which was battling understeer.
Another explanation for the Toro Rosso's chronic lack of pace was being on the wrong tyre - the hard tyre may have had the longevity but it didn't have the grip.
Romain Grosjean had the beginnings of a really big problem - his team told him to lift when shifting from third to fourth, his pitwall describing that gear as "bad." He said he couldn't but Alan Permayne jumped on the radio and warned him that if he didn't, he'd "blow up the engine."
Daniil Kvyat was given an ultimatum by the Red Bull team - get by Verstappen or your race will unravel. The Russian agreed and dived down the inside of Verstappen who had tried to parry, but lost the place.
Unlike the Toro Rossos, Raikkonen's run on the hard tyres went very well indeed. The Finn was barely slower than his teammate who was on mediums and putting in a middle stint that had done him so well in Bahrain.
Fernando Alonso's home race ended on lap 28. His McLaren fired off the track at turn, his brakes just not up to the job. He came in to the pits but the rears all but failed, causing him to overshoot his pit box by almost the entire length.
The front jackman was already wide awake, leaping out of the way and the car was wheeled into the garage, a lucky escape for all. Button suffered the ignominy of being passed by Maldonado's very broken Lotus before pitting.
Rosberg continued to slowly extend his lead. Hamilton pleaded with his team for a better second stop as the hard tyre stint beckoned. The stop was better but hardly the fastest example, at 3.4 seconds.
Hamilton returned to the track behind Button's McLaren and then had Raikkonen to contend with. The Ferrari was on very old hard tyres and didn't bother putting up a fight, allowing Hamilton to pass easily along the main straight.
The Mercedes seemed happier than might have been expected on the hard tyre, with lap times that looked to seriously threaten Vettel's second place.
Ferrari left Vettel out, the Scuderia perhaps expecting Hamilton to have to stop again. Vettel stopped on lap 41 and fell behind both Hamilton and Bottas.
Another front jackman got a fright, this time at Lotus. Grosjean missed his marks, the man at the front gamely stayed where he was, the jack handle hoisting him into the air and dropping him on the concrete. He wasn't badly hurt but was later seen nursing a bag of ice over his nether regions.
Raikkonen pitted on the same lap, but there was far less drama in the red pit, the Finn heading out after a quick stop.
Grosjean wasn't flustered by the near-disaster of his stop, the French driver heading out and into battle with Kvyat, taking the Red Bull driver's ninth place with a brave move around the outside.
Rosber came in for his second and final planned stop of the race on lap 45, with Rosberg almost a pit-stop ahead of his teammate. The stop was clean but Hamilton swept by.
Rosberg was immediately assured Hamilton had to stop again, his tyres unable to make it to the finish.
Raikkonen's stop put him behind the Williams of Massa. The Finn shot by his former teammate at turn one as the lap counter clicked over to lap 47. Massa stopped a lap later.
Hamilton came in for his final stop on lap 51. Once again the stop was drama-free and he slotted in ahead of Vettel. The Ferrari driver communicated his displeasure over the radio, giving a short, sharp critique of the strategy.
Hamilton and his pitwall had another extended discussion about strategy. The Briton was keen for a win, but he was advised that Rosberg would speed up to get away and that Hamilton should concentrate on consolidating his position.
Hamilton basically ignored this and set about closing down the sixteen second gap with eight laps to go.
Raikkonen fought to get within striking distance of Valtteri Bottas, but the the Williams driver was implacbable and the Ferrari unable to get through the turbulent air, finishing fifth.
Rosberg took the win ahead of his teammate, the first time he has beaten hi this year. Vettel came home third - another podium but a long way behind the Mercedes cars.
Daniel Ricciardo came home seventh, his fourth - and last penalty-free - engine lasting the distance this time.
"I am more satisfied today as we achieved everything we could and seventh was the maximum I could get out of the car. There were some parts of the race that were encouraging but we're still further off than where we want to be, but we'll keep pushing," Ricciardo said.
"We came here with upgrades this weekend but they didn't give us what we were expecting, so that's something we'll keep working on. We're still a fair bit behind Williams at the moment but I think we have a good chance to close the gap a bit further in Monaco."
Formula 1 returns in two weeks for the Monaco Grand Prix.
SPANISH F1 GP RESULTS
- Nico Rosberg - Mercedes - 1h41m12.555s
- Lewis Hamilton - Mercedes +17.551s
- Sebastian Vettel - Ferrari +45.342s
- Valtteri Bottas - Williams/Mercedes +59.217s
- Kimi Raikkonen - Ferrari +1m00.002s
- Felipe Massa - Williams/Mercedes +1m21.314s
- Daniel Ricciardo - Red Bull/Renault +1 Lap
- Romain Grosjean - Lotus/Mercedes +1 Lap
- Carlos Sainz - Toro Rosso/Renault +1 Lap
- Daniil Kvyat - Red Bull/Renault +1 Lap
- Max Verstappen - Toro Rosso/Renault +1 Lap
- Felipe Nasr - Sauber/Ferrari +1 Lap
- Sergio Perez - Force India/Mercedes +1 Lap
- Marcus Ericsson - Sauber/Ferrari +1 Lap
- Nico Hulkenberg - Force India/Mercedes +1 Lap
- Jenson Button - McLaren/Honda +1 Lap
- Will Stevens - Marussia/Ferrari +3 Laps
- Roberto Merhi - Marussia/Ferrari +4 Laps
- Pastor Maldonado - Lotus/Mercedes Retirement
- Fernando Alonso - McLaren/Honda Brakes