Are you responding after you had to translate from Hindi to English or from English to Hindi? Your first remarks seems to be the latter, the second the first. The start with your first remark:
The word आना is not necessary in itself (i.e. without it the sentence is valid Hindi with a similar meaming), but "उसे दिल्ली पसंद है" means 'She likes Delhi.' In practice to like "to come to Delhi" or "to like Delhi" are not very different in meaning, but technically, one says that you like the place, and the other that you like the action of coming. Translating to Hindi, we use "आना" to render 'to come'.
I don't 100% understand your second remark: English translation: "She has to like ..." - that's little odd English. Do you think the Hindi could/would mean 'It's compulsory to like'? Though you usually can't really like something because you are told to like it. The have something compulsory with do full verb + form of होना in Hindi. Since we have here a 'पसंद है' form, I wouldn't know if that were even possible in Hindi (besides the fact of the somewhat strange meaning ). Would it be 'पसंद होना है' ? Or perhaps I have just misunderstood your question altogether. Then clarify.
Thank you. I continue to struggle with many aspects of Hindi grammar, and I still cannot speak much of what I'm learning, but I am able to recognize many words and do the lessons, mostly with ease. In this care I am confused about ना and its use. I thought it meant "have to", so in this case आना "have to go." But my understanding doesn't hold up throughout the lesson. I find I am doing the lessons but I would also like to understand them. At any rate, thanks for trying to help.
Verb forms which end in ना like आना are not really like 'have to'. They are actually the infinitive forms of the verbs. So, आना = 'to come'.
Infinitive forms of verbs are used to express 'have to'/'want to' in Hindi but this is idiomatic usage. For this, we use the construction '[Noun] को [Verb infinitive] है' which can express either '[Noun] wants to [verb]' or '[Noun] has to [verb]' depending on the context. Since this is idiomatic, you cannot translate it literally into English.