I was taught that there is a difference in the kind of obligation one can express through 'must' and 'have to'. If I say
I must do this.
I imply that I feel an inner urge to do this, whereas if I say
I have to do this.
the obligation is somewhat external, coming from somebody else, not necessarily as an inner conviction.
I am proofreading a book and I must say that in written language I definitely prefer 'must' rather than 'have to'. Yet my friend tells me: 'If I say must I feel obliged, if I say have to it comes from the heart.' English is her mother tongue, not mine. I just wonder if my instinct is right. Thank you for your help.
PS: Does not have to sound more spoken language than must?