Milan began his three-year-old season in the Listed Ballysax Stakes at Leopardstown on 16 April. He started at odds of 7/1 and finished second to the subsequent Epsom Derby winner Galileo, with Vinnie Roe in third. With his stable companion Galileo aimed for the Derby, Milan was sent to contest Group One races in France. He finished a half length third to Chichicastenago in the Prix Lupin at Longchamp in May after which O'Brien called Milan "still a big baby". In the Prix du Jockey Club at Chantilly in June he was poorly drawn and stumbled exiting the stalls before finishing "powerfully" to take fifth place behind Anabaa Blue. In these races he was ridden by Mick Kinane who rode Milan in all his subsequent races.
