So what is it that makes English so hard for foreigners to learn? The answer is: the combination of its vocabulary, orthography, and pronunciation. Most languages have a regulatory body which issues spelling reforms as the pronunciation of the language develops (which happens much faster than one might have expected). On the other hand, English spelling is “regulated” by influential dictionaries, such as Webster’s dictionary and The Oxford English Dictionary.
However, by the time these dictionaries were written (during the 19th century), English pronunciation had already been changing for several hundred years which, unfortunately, was mostly ignored by the creators of the dictionaries. As no surprise comes the fact that English pronunciation has diverged even further from its spelling since these dictionaries were written.
This poses a much greater problem to learners of English than to native speakers because native speakers know how to pronounce words; they just have to be able to spell them correctly, which is not such a big problem nowadays when anyone can use a spell checker.
Learners of English, on the other hand, meet most of their vocabulary in a written form first. It is often possible (and even appropriate) to derive the meaning of a new word from the context, but instead of looking up the correct pronunciation in a dictionary, learners tend to just guess what the pronunciation might be and then use this pronunciation internally when thinking about the word. Unfortunately, such guesses are wrong most of the time.