De means of here, so el noreste de la península means the northeast of the peninsula.
Spanish often uses de to link one noun to another in this way:
La península is feminine, so it takes la.
Spanish uses the definite article more often than English.
Here, la península refers to a specific peninsula, probably the Iberian Peninsula from context, so Spanish naturally includes the article.
This is very common:
Even when English might sometimes leave the article out in certain expressions, Spanish often keeps it.
Hay means there is or there are.
It comes from the verb haber, but in this use it does not mean to have. It is used to say that something exists or is present.
Examples:
So in your sentence, hay ciudades muy bonitas means there are very beautiful cities.
After hay, Spanish often uses a noun without a definite article when introducing things that exist.
So:
If you said hay las ciudades, that would sound wrong in normal Spanish.
Using las ciudades would usually mean you are talking about specific cities already known in the conversation, and hay is generally not used that way.
Because muy is the word used before adjectives and adverbs to mean very.
Mucho is usually used with nouns, or as an adverb meaning a lot / much in other structures:
So before bonitas, which is an adjective, you need muy.
In Spanish, adjectives often come after the noun.
So:
This is one of the most common word-order differences from English.
Sometimes adjectives can go before the noun, but the normal, neutral position for descriptive adjectives like bonito is after it.
Not in the same way.
Hay is used to say that something exists or there are some of them.
Están is used more to say where specific things are located:
So:
A useful way to see it is:
So the sentence is built like this:
location + hay + noun phrase + location phrase
This is a very common and useful Spanish pattern: