英語の書き換えなどで、must を have to に書き換えさせるような問題もあり、実際に 「must = have to」のように使われています。
mustとhave to の違い
厳密にいうと、must と have to はニュアンスが違います。
must は、話し手の主観的命令で、どちらかというと固い表現で強制的な側面があります。
一方 have to は、外部からの要因によって生じる必要性といったニュアンスで、must に比べて固くなく強制的な側面が薄れます。
従って、受け取るほうは、have to を使われるより、must を使われたほうがより強制的な感じを受け取ります。
それゆえに、社交の場では、must よりも have to のほうが好んで使われます。
must = have to でないケース
例えば、次の英文をみてみましょう。
You have to come home before dark.
(暗くなる前に戻ってこないとダメですよ)
これには、暗くなると危ないからという「外部からの要因によって生じる必要性」というニュアンスが強いため、have to が用いられていると理解できます。
Probably she will have to meet him tomorrow.
(おそらく、明日、彼女は彼に会わなければならないだろう)
これを
Probably she will must meet him tomorrow.としては、間違いです!
なぜならば、助動詞を2つ並べて併用できないからです。
つまり、will と must を一緒に使うことができないために、have to を使わなければなりません。
She had to go there yesterday.
(彼女は昨日そこにいかなければならなかった。)
これを
She must go there yesterday.としては、間違いです
なぜならば、must には過去形がないからです。
しかし、間接的な言い方の場合は、過去であっても must を使うこともできます。
I told him that he must go there yesterday.
(私は彼にそこに昨日行くように言った。)
had betterは目上には注意
had better というと、「~したほうがいいよ」という場合に使われます。
例えば、
You had better finish your homework quickly.
(宿題、早く終わらせたほうがいいわよ。)
had betterは、「(・・・するよりは)~したほうがいいよ」という意味になりますが、一つ注意が必要な点があります。
それは You が主語になった場合、「~しないと大変なことになる」というニュアンスになり、忠告や勧告・提案の域を超えて、警告・脅迫のニュアンスになります。
親が子供に浸かったり、教師が生徒に使ったり、目上の人が目下の人に使う場合は、had better で良いのですが、その逆だと適切ではありません。
ニュアンスの強さの順としては、
must = ~しなければならない
had better = ~するのがあなたのため
ought to, should = ~したほうがいいでしょう
となり、mustが一番強くなり、義務を強要する感じになります。
友人同士の間での助言ということであれば、should が適しているでしょう。