Are martial arts actually any good in a fight?
Depends on the martial art, depends on what you're expecting to do. I currently know about 190 different techniques, but most of them aren't ones you'd use directly in a fight. What they are very useful for is learning how the body moves and reacts, where pressure points are, and where joints do and don't like to go. And what practicing them is good for is getting fast at doing them instinctively.
In proper sparring, I find I only really use variations of a few techniques - arm bars of various types, pressure point strikes, things I know I can get to work quickly and without faffing about.
Same with forms - people wonder why we bother with these stylised set routines, but again you aren't training the form as such, you're training balance, stance, fast movement, and certain sequences of movements that are very useful to know instinctively.