attack、assault、assailはいずれも「攻撃する」と訳されます。

和訳はほぼ同じになることが多いですが、英語の用法では微妙に違いがあるようです。
 
英語類義語活用辞典、英語類義語使い分け辞典、ロングマン英々辞典を参考に違いをまとめます。

英語類義語活用辞典の解説

attack assault assailはいずれも軍隊用語で敵を攻撃することを意味します。
 
日常用語では比喩的に使われるケースが多く、含みには違いがあります。
 
attackはこちらから攻撃的に態度に出ることで、何もしないのに攻撃されたと相手を非難したい時は、I don’t want to be attacked. です。 
 
「仕事や食事にすごい勢いでとりかかる」こともattackを使えます。日本語でも「アタックする」と言いますね。
 
She attacked the dinner the moment she sat down.
(彼女は座るやいなや、夕食をがつがつ食べ始めた)
 
attackは言葉での攻撃にも使います。
 
He was attacked by his critics for his failure to live up to his own proposal.
(自分が提案したことを実行していないとして、彼は批評家から非難を受けた)
 
attackとassaultにはassailにはない使い方があります。
 
それはrapeを婉曲に表現する用法で、この場合はattackのほうが上品とされています。
 
assaultは口語では上のsexual assaultの意で多く使われるほかに、他人を暴力で襲うことにも使います。
 
assaultは本来the final assault on the enemy(白兵戦)で兵士同士が戦うことを意味しています。そのため相手を急襲する、または急襲される場合に使います。
 
He was assaulted by a gang of hoodlums and robbed.
(彼は暴漢の集団に襲われ金品を奪われた)
 
assailがattackやassaultと違うのは、攻撃が継続する点です。比喩的にも使われます。
 
He was assailed with blows.
(彼はパンチの雨を食らった)
 
He was assailed by a cloud of doubt.
(疑念がいつまでも彼を悩ませた)
 
assailantは「襲撃者」に加えて「論敵」の意にも使います。
 
He was the assailant in the day’s debate.
(彼はその日の議論の中で反論の立役者だった)
 

英語類義語使い分け辞典の解説

attack
特に武器をもって攻撃する。(最も一般的な語)
 
assault
激しくまたは繰り返し攻撃する。(格式ばった語)
 
charge
激しい動作で襲い掛かったり、突進して攻撃する。
 
storm
嵐のように突然の激しい攻撃によって(城・砦などに)攻め入る。
 
bombard
砲撃または爆撃する。
(比喩的に)質問などで攻め立てる。

ロングマン英々辞典の解説

attack
1 to use violence,esp. with weapons
 
The enemy attacked us at night.
 
2 to speak or write strongly against, esp. withe the intention of showing something to be bad or worthless
 
a powerful speech attacking government policy
 
assault
n violent attack, esp. a sudden one
 
The army launched a major assault against the rebel town.
 
assail
to attack violently
 
The police were assailed with rocks and petrol bombs.
 
英々辞典の定義では、違いがいまひとつピンときませんね・・・。