The correct option is B informal
Formal, semi-formal and business letters are written in a formal language. The diction used must be appropriate, as you're writing the letter to a person of authority, or to someone who is senior to you.
The given line, "I am very upset that you haven't written in so long" is in a casual, friendly tone. The person is expressing his emotion to the receiver of the letter. This is not acceptable in the case of formal and business letters.
Hence this line is not appropriate for a formal, semi-formal or a business letter, and options A, C and D are incorrect.
This line is appropriate for an informal letter, as it is suitable for when you're writing to a close friend or someone whom you're related to. Hence option B is correct.