Palou's team played the tire strategy perfectly to allow the 2021 champion to lead 52 of the 85 laps, while McLaren team-mates Pato O’Ward and Alexander Rossi were able to pass Lundgaard's Rahal Letterman Lanigan car to complete the podium.
Lundgaard and fellow front row starter Felix Rosenqvist (McLaren) elected to start the race on primary tyres, while third starter Palou was the only driver in the top seven to choose alternates.
Lundgaard made a great start to get the jump on Rosenqvist, but Palou was all over him using his grippier tires and through Turns 12 and 13 he got ahead to cross the line first.
Jack Harvey had also passed Rosenqvist to run third, while further around the opening lap Rossi – up from 10th – used his alternates to claim fourth.
Racing was interrupted by yellows flew retrieve the two Dale Coyne Racing cars of David Malukas and Sting Ray Robb which collided at Turn 7, allowing Scott McLaughlin and Romain Grosjean to pit for new front wings.
Palou held off Lundgaard at the lap six restart as Harvey lost out to Rossi on the back straight after a heavy Turn 1 lockup, the Briton's flat-spotted tyres causing him to tumble back down the order over the following laps.
Behind, reigning champion Will Power was punted into a spin at Turn 2 by Kyle Kirkwood, earning the Andretti Autosport driver a penalty that dropped him to the back of the field behind his Penske rival.
Lundgaard closed on Palou when his softer tyres started to go off, prompting Palou and fellow alternate starter Rossi pitted on lap 18. Lundgaard followed them in two laps later for a set of alternates, but emerged two seconds behind Palou, as Rosenqvist and O’Ward went two laps longer.
Lundgaard took the net lead from Palou under braking for Turn 7 on lap 24 while off-strategy team-mate Graham Rahal led, having twice pitted under yellow due to suffering damage in the opening laps.
RLL didn't ask Rahal to let Lundgaard by, and he was unable to take full advantage of his tyres until Rahal pitted on lap 31. This was four laps after O’Ward on alternates passed Rossi on primaries before making an early second stop for primaries.
Palou soon came back at Lundgaard, who had lost the lead by the time he came in for a second set of red tyres. O'Ward's undercut of both Palou and Lundgaard only gave him a temporary lead before both navigated a route past.
Palou (primaries) headed Lundgaard (alternates) and O’Ward on primaries following the conclusion of the second stops, with Rosenqvist (alternates) and Rossi (primaries) chasing behind.
Lundgaard's second set of alternates left him prey to O'Ward, who moved ahead before the Dane made his final stop on lap 59. Palou came in on the following tour, both taking primaries, while O'Ward switched to alternates at his lap 62 service before resuming second.
When Lundgaard ran out of push-to-pass boost, Rossi moved ahead into Turn 7 with nine laps to go, but the 2016 Indianapolis 500 winner was unable to catch team-mate O'Ward ahead as Palou won by 16.8s.
Lundgaard had to settle for fifth, just holding off Rosenqvist who moved into fifth when Colton Herta was called for blocking.
Herta fell back to ninth, ahead of Rahal, in the final laps allowing Ganassi's Scott Dixon, leading Penske runner Josef Newgarden and Marcus Ericsson into the top eight.