Rajit Kapoor in "The making of the Mahatma "
The only reason, he is at the 5th spot and not on the 4th or the 3rd is because this film showcased the life of Gandhi during his stay at South Africa only. Though, it was the only reason he was cast as Gandhi as Shyam Benegal wanted to make a movie on the younger Gandhi. He did all the justice with the role, just the film was a little slow.
Annu Kapoor in "Sardar "
Before Annu Kapoor became a popular anchor on Antakshari, he delivered some really fine performances in Ek Ruka Hua Faisla [Indian version of the classic 12 Angry Men], Mr. India [practically India's first superhero film] and Sardar. Sardar was made by Ketan Mehta on the life of Sardar Vallabh Bhai Patel, played by Paresh Rawal during the time of Indian freedom and partition. Annu Kapoor took care of almost every little detail, and was quite convincing as Mahatma Gandhi. Though he could have worked more on his speech, which was a little inappropriate.
Darshan Zariwala in "Gandhi, My Father "
This is a different kind film on Gandhi's life. It focuses on his personal life rather than his political life, his relationship with his son and how the nation's father couldn't be a good father to his own son. For his portrayal as Gandhi, Darshan Zariwala received mixed reaction. He deserves the 3rd spot according to me.
Naseeruddin Shah in "Hey Ram "
Many of you won't agree with Naseeruddin Shah on the 2nd spot for the best Mahatma Gandhi's portrayals. It is not because he is one of my most favorite actors, but because he did it as intelligently as any other role he executes, not taking the responsibility of being Gandhi too seriously and perfecting it with ease. No other actors who played Gandhi ever tried perfecting or working on Bapu's Gujarati accent but he did, that is Naseeruddin Shah for you.
Ben Kingsley in Gandhi 
Do I even need to tell who tops the list of best Gandhi portrayals, Ben Kingsley lived Gandhi. For those who never cared to find out what Mahatma Gandhi looked like, what was his mannerism, how he used to get angry and the way he ate, slept or cried; go watch Gandhi, Gandhi did everything like Ben Kingsley did in this Richard Attenborough Biopic.
This list is also published at "Movie Geek's Blog"