Attack, assail, assault, bombard and storm are comparable not only in their military but also in their extended senses. All carry as their basic meaning to make a more or less violent onset upon.
Attack originally connoted a fastening upon something as a beast of prey fastens upon its victim. It now implies aggression or aggressiveness in all its senses and usually the initiative in entering into an engagement or struggle (as with a person or thing that is opposed or that one intends to conquer).
Assail suggests the action of one who would conquer by force of repeated blows rather than by brute strength. Its chief distinction from attack is in this suggestion of repetition of means (as blows, strokes, shots, or thrusts) of breaking down resistance.
Assault implies close contact or a direct confrontation; in contrast with assail, it suggests the use of brute strength and an attempt to overpower by suddenness and violence of onslaught.
Bombard literally means to assail continuously and devastatingly with bombs or shells <the advancing German army in 1914 expected to bombard Paris and bring a quick end to the war) It is, in its stronger implication of importunity or of continuous pestering, distinguishable from assail.
Storm means to assault with the violence, rush, and effectiveness of a sudden and devastating storm or wind; it connotes an attempt to sweep from its path every obstacle to a victory.