Like you, I do my training at home. Even with puppy kindergarten, by the time a puppy has been vaccinated and had titers, he's going to know pretty much everything he'll experience in the class. So I don't go to classes to have someone show me how to get my dog to sit, down, etc., but so that my dog gets experience doing those things in a different environment with other dogs around. Since my end goal is competition with my dogs, they need to learn how to handle a high level of distraction, and classes are a step along the way (after that come matches).
In this area you can do drop-in classes rather than sign up for courses, and that's what I do. Puppy kindergarten is the only course I've signed up for with my last 3 dogs. That's not to say I don't get helpful tips and instruction at the drop-in classes because I do. Good instructors have a lot more experience at competition with a greater variety of dogs than someone like me will ever have.
The other reason for classes is what you pointed out in mentioning agility - to be able to train on equipment you don't have at home. I don't do agility, but if I ever decide to do barn hunt, the only way to train for that will be classes. I could easily get straw bales and all, but I'm not about to take on rats just for dog training.
You do need to choose your classes carefully, though. Just for an example, I was in a puppy kindergarten class where the instructor's way of teaching Leave It was to put the puppy in a sit, put a treat in front of it, and then say, "leave it" and smack it on the nose when it went for the treat. So you need to choose your class and instructor carefully, but you also need IMO to be the kind of dog owner who will simply say, "Nope, not doing that." In that particular case, I just didn't do it and no one noticed, but I've occasionally come to the point of having to openly refuse to do whatever was recommended.