The punching animations feel very stiff. The entire body is involved in the act of throwing a punch, not just the arms.
Another problem, the animation starts and ends too quickly. It's assumed the punch lands, but the animation ends right there. You need a couple more frames afterwards to make the animation feel more natural. If you wanted to go all out you could even have separate animations for a miss, or a hit (more of a thwack! at the end). This is called
follow through.
There's also a lack of
anticipation in the animations generally, as Pix3M noted.
Basically, you're going to need more frames before and after the punch to make it look better.
I searched around a bit and found a video of
a guy using a punching bag in slow motion. (
Here's one that's regular speed, but no bad music!) Maybe those'll be a useful reference?
Notice how a lot of the power from the punch comes from the twisting of the torso and legs. His torso twists and sort of drags his arms along for the ride on some punches. And, generally, he stands on his toes as he punches, allowing him to twist his legs easier.
Basically, when punching, you twist the shoulder of the arm that's punching forward, adding more power to your strike. Adding this and some other nuances into your animation will make it look much more natural.