I went all in with one other player still to act. He threw his cards on the table face up got my reaction then said I call. Is this legal or is his hand folded?
The rulings on this particular thing vary according to where you play.
Some places let you show your cards in a hand to another player only if you are head up. Others do not and in particular this is generally not allowed in tournaments.
The way you describe this incident most places would rule this hand dead. The problem is the player as you said "threw his cards on the table", this indicates that there was forward motion and that is a folded hand. If the player just held on to his cards and turned them up it is ok for him to do so if showing cards is allowed head up.
Almost never would a floorman call such a hand dead unless there were an explicit house rule to that effect (and this is rare).
If players are truly head-up (no other players all-in), then there is nothing unethical about showing your single opponent your cards, and many places allow that in live play. But it is unfair if any third player is involved, and in that case, a floorman might well make a ruling--but killing the hand is not generally a good ruling, because the floorman has no way to know whether having the hand live or dead is better for the third player whose interest he is supposed to protect. Better to just let the hand play as played, and penalize later.