It seems to really vary from fort to fort (or gobbo civ to gobbo civ). My current fort I've had a few sieges, nothing really that scary, 2, maybe 3 squads, easily dispatched. In the most recent siege the "general" showed up, a human no less. He didn't seem like much of a leader to me, no armor, no weapons, just a dude. He, of course retreated. In 7 years I've gotten maybe 4 sieges total, and the leader has only showed up in the last one.
My last fort was bloody insane. My first siege was ok, one or two squads, but they were on flying bats. I was still finishing them off when....surprise! Another siege. Not 9 pages worth, but it was huge, and all my traps were sprung from the first siege. That was one of the more epic DF days. It ended with 4 military dorfs left. The commander was going nuts chopping the limbs off of everything that tried to run out of the front door, while two axedorfs fought back to back in the hallway, protecting the body of their wounded captain (he died later, bloody soap. No less heroic though!). This time the gobbo leader was a [clown], and he showed up for every single siege except the first easy one, getting closer and closer to the fort until he finally engaged my forces. In the first 4 years of this fort, I got maybe 6 or 7 sieges total. It was pretty vicious.
First off more traps! To get into my fort they have to get past a dozen cage traps and a dozen weapon traps minimum, generally a lot more, depending on the layout of the fort. I tend to have more than enough traps setup, mostly to feed into my punishment chambers/arena, then I can use them if I want, or send dorfs out to murder them first hand if I don't.
As for the military, training and armor are key. You have to inspect and make sure every dorf is properly equipped. They are notorious for going out wearing only one boot or one gauntlet, then what they get their foot/hand chopped off, they freak out, stop fighting and die. In any 1v1 combat, whoever draws first blood is going to win 95% of the time.
Shield training is bugged right now, so you cannot train up shield skills and weapon skills at the same time. As such, I setup my dorfs with a shield and let them swing it around in the barracks for awhile before giving them an axe and letting them actually do some fighting. Armor skills seems really hit and miss too, but I don't know how to make them train that up. Make sure your dorfs are doing individual combat drills in their downtime too, since that is the only way to get them to train currently. Just setup a barracks and make sure each squad is assigned to train there, and turn off all labors for those dorfs.
If they're encased in steel, using axes, and have some training, they can easily take out gobbos, even a force many times larger.