Proper self-defence should be pre-emptive rather than rely on reflex to block attacks.
here's something I would like to share with those interested. Most martial arts I know tend to have sets of move that are each specifically design for defence specific attack, in a real situation, you won't have time to think about how your opponent is going to attack. And unless you're real expert in that discipline, 90% of the time you won't be able to come up with the proper move for sudden attacks..
to make it simpler to understand, instead of trying to block one's fist or forearm, go straight to control the person's shoulder. I don't care how the punch (round house or straight) is comming, if you can hit his shoulder, the force of the punch will be diluted significantly, simply because the shoulder is the origin of the punch. (you'd probably ask how, hard for me to explain here)
Other reason to control the shoulder of the attacker is simply because it is much easier to catch that a fist.
Another practical tip: in confrontation, try to maintain 3 feet space between yourselves and the other (make sure he/she has to step forward to be able to attack you), eyes to eyes but keep sight on the foot position of your opponent, when he/she tried to step forward to attack, kick hard on that lower leg, just above ankle. Preferrably on the side of the shin for maximum result.