I'll Have Another won the 138th Kentucky Derby at Churchill Downs before a record crowd of more than 165,000.
Ridden by Mexican jockey Mario Gutierrez, I'll Have Another hit the lead passing the shadows of the iconic Twin Spires and kicked clear to win the US$2.2 million (Dh8m) classic, as Godolphin's hope, Alpha, had to settle for a 12th place finish.
Bodemeister, who started as the favourite, finished second, one and a half lengths back, after trying to lead all the way.
The fast-finishing Dullahan came third, a further neck behind.
I'll Have Another, a three-year-old chestnut colt, emerged as a real contender to win the Run for the Roses after winning last month's Santa Anita Derby in California.
"He is an amazing horse," said Gutierrez, who moved to the United States less than a year ago after riding for six years in Canada.
"I told everybody before the first time I rode him, I knew he was the one."
In keeping with tradition, the race was preceded by the singing of "My Old Kentucky Home" and the winner was draped in a garland of red roses as a huge crowd packed into the course, dressed in an array of outfits and sipping on mint julep drinks.
Bodemeister, who was favourite after winning last month's Arkansas Derby, jumped into the lead from post position six.
Jockey Mike Smith kicked five lengths clear rounding the final turn and looked set to win before his mount started to tire down the stretch.
I'll Have Another drew level then pulled clear over the last furlong as the crowd let out a defeaning roar.
Rajiv Maragh rode Alpha, and he said: "Not the finish I was expecting but in the early part of the race it was happening really good, just the way I had hoped - a speed duel and just settle down. But after that he just couldn't pick it up."