Both bravery and courage are acts of valour and imply a certain strength and fearlessness. There is, however, a subtle difference in meaning between the two words. Courage comes from the French word coeur, meaning heart. It is a quality of character that allows someone to carry through with a difficult premeditated plan of action.
Bravery, on the other hand, comes from the Spanish word bravado, meaning a single or spontaneous act of valour. It is not planned, but rather a kneejerk reaction that often occurs within a crisis.