first of all certain points to take note w.r.t captaincy
1. better win-loss record doesn't mean better captain because that depends on the over all strength of the team.
2. a captain must lead from the front.i mean he must be a great player first
So the best Indian captain for me was Kapil Dev.These are the reasons.
Kapil's career stats(i mean all round stats) as a captain was great. so in the case of 'lead from the front ' criteria Kapil outweighs both Dhoni & Ganguly. Ganguly was a great one day player but 'good' test player at best.Dhoni is a great one day player but a 'good' wk/batsman at best in tests.Ganguly possesed a team which can be perhaps termed as the best Indian team in history.Top 6 classy batsmen + 2 quality spinners + 2 very good seamers(Sreenath & Zaheer khan) made that team. So quite naturally Ganguly could attain better results.Dhoni's test record is pathetic to say the least(a claim can be made that Dhoni possesed a weaker test team when compared to that of Ganguly, yet Dhoni's record is not up to the mark even after taking what i told into consideration)
Kapil as a player had convincingly better stats than both Gang&Dhoni during his captaincy both in tests & one dayers.The Indian team he captained was no way nearer in overall strength when compared to that Of
Ganguly. Yet Kapil led India to 83 world cup victory by beating the mighty WI. What not he was the champion all rounder of that world cup with his impact displayed in every match of the tournament.
With the weak team he possesed he had a 2-0 series victory in ENG , a drawn series in AUS where he was the best all rounder, a 2-0 loss to mighty WI in a 5 test series (even that result was very good when the strength of that WI team is taken into account).In this WI series Kapil achieved perhaps the best ever all round performance in the history of test cricket by avg

g 42.33 with the bat and 24 with the ball.Yes ... agreed Kapil had his flops as well, but when considering the team he possesed and the achivements he gained both as a player and as captain during captaincy, i am sure it is Kapildev