Polling stations open at 8am (1300 GMT) and the first exit poll is expected at 4pm on Sunday.
Following a campaign that included fights, egg-throwing and a shootout between rival supporters, voters must choose between Humala's promises of a revolution for the half of Peru's 27 million people who are poor and Garcia's pledges to improve on unprecedented economic growth since 2002.
Humala, a political newcomer and former army commander, says he will increase the state's role in the economy. Garcia, whose 1985-1990 government left Peru in economic ruin, has sought to rebuild his image as a moderate.
Alfredo Torres, director of the pollster Apoyo, said: "Voters are perhaps more polarised than we've ever seen in Peru's recent history ... but Garcia should win."
Election officials declined to give a time for the first official results but say they will have more than 52% of the votes counted by the end of Sunday.
Polls on Friday gave Garcia up to a 12-point lead over Humala. But 8% of voters said they had not decided which candidate to vote for, giving Humala a slight chance of being elected, political analysts said.