1. It greatly affects the way it gains stats, and what the maximum amount in that stat is.
2. It's a way of training your Pokemon so that it gains certain stat boosts. With enough patience, it's possible to make a stat go up by over 30 points in one level, as compared to 2 or 3.
3. Sometimes, it all depends on how dedicated you are on getting to lvl 100. For hackers, it takes no time at all, seeing as how they have 995 rare candies. For the rest of the Trainers, it takes about a day to get 1-2 Pokemon to lvl 100.