This is a true story based on the life of an Indian athlete Milkha Singh.
He ran for India during 1960 Summer Olympics in Rome. Milkha Singh (Farhan Akhtar) has a flashback of his childhood days as a young boy which haunted him and resulted in him becoming an athlete.
During the partition of India in 1947, his parents died in the Punjab violence. He makes his way to Delhi and meets his sister there. Living in impoverished refugee camps, Milkha soon makes friends and survives by stealing along with his friends.
He falls in love with Biro (Sonam Kapoor) but she asks him to live a life of honesty. He joins the Indian Army and they see his talent as an athlete. He gets selected for the Indian Team for Olympics.
He manages to win the race and makes it to the Indian Team. During the Indo-Pakistan games, Milkha takes the lead and not only wins the race but also wins the respect of the two nation's people. The Pakistani commander impressed by his effort gives him the title “The Flying Sikh.”