What is the difference with must and have to? Is there a difference in obligation is one internal and the other external?
Native speakers normally prefer "have to". This is probably because "must" survives from Old English. Let me "exemplify":
Jack (to his daughter Jane) : "Do you have to do that, Jane?"
"MUST you do that, Jane?"
To my ear, Jack's first sentence is uttered almost resignedly - "Oh Jane, do you HAVE to?" He is not really cross, more frustrated. Jane will probably ignore him.
His second sentence, though, is pretty threatening. When Jane hears "MUST", Dad's not messing around.
This continues throughout adulthood. If we've got to take the rubbish out on Monday morning, "I suppose we'll have to." But if we have to remember our wedding anniversary, we MUST take the wife to that ridiculously expensive French restaurant where it costs ten quid for a piece of rubbery cheese on over-roasted bread.
It's quite a complicated feature of English, and very confusing to foreigners.
"must" is a so-called modal auxiliary, and is also an example of a so-called defective verb. It is defective because there are some bits missing: it has no infinitive, no past participle and no present participle, for example. But sometimes you can't construct a sentence without one of these forms, and in this case English has an alternative: "have to". For example, you can't say: "I will must go", so you have to say "I will have to go".
There some idiomatic differences, as Coffa says, but apart from that, so far so good.
The problem is that the negative form of each version has a totally different meaning:
"You mustn't" means "You are not permitted" -- "You mustn't smoke here" means "Smoking is not allowed here."
"You don't have to" means "It is not necessary" -- "You don't have to go" means it's okay if you don't want to go.
In Britain, you mustn't walk down the streets with no clothes on. But you don't have to wear a hat if you don't want to.