James Hinchcliffe overtook Takuma Sato of Japan on the last turn to win IndyCar's Sao Paulo 300 for his second career victory on Sunday.
The Canadian moved from third to second with three laps to go and, after the long back straight, moved inside Sato to take the lead just a few yards from the finish line at the Anhembi street track.
American Marco Andretti was third.
Will Power, who won the previous three races in Brazil but started only 22nd after a mishap in qualifying, retired on lap 19 because of an apparent gear shift problem.
Power's Penske teammate Helio Castroneves, a home-crowd favorite and the points leader entering the weekend, had an incident-filled race and finished 13th.