What makes one language harder or easier to learn than another? Unfortunately, there is no one simple answer. There are some languages which have a number of characteristics that make them relatively difficult to learn. But it depends much more on what languages you already know, particularly your native language, the one (or ones) you grew up speaking.
Your native language The language you were surrounded with as you grew up (or languages, for those lucky enough to grow up speaking more than one language) is the most influential factor on how you learn other languages. Languages that share some of the qualities and characteristics of your native English will be easier to learn. Languages that have very little in common with your native English will be much harder. Most languages will fall somewhere in the middle.
This goes both ways. Although it is a stretch to say that English is harder than Chinese, it is safe to say the native Chinese speaker probably has nearly as hard a time to learn English as the native English speaker has when learning Chinese. If you are studying Chinese right now, that's probably little consolation to you.
Related languages Learning a language closely related to your native language, or another that you already speak, is much easier than learning a completely alien one. Related languages share many characteristics and this tends to make them easier to learn as there are less new concepts to deal with.
Since English is a Germanic language, Dutch, German and the Scandinavian languages (Danish, Norwegian and Swedish) are all closely related and thus, easier to learn than an unrelated tongue. Some other languages related in some way to English are Spanish, Italian and French, the more distant Irish and Welsh and even Russian, Greek, Hindi and Urdu, Farsi (of Iran) and Pashto (of Afghanistan).
English shares no ancestry with languages like Arabic, Korean, Japanese and Chinese, all languages considered hard by English standards.
Similar grammar One of those characteristics that are often shared between related languages. In Swedish, word order and verb conjugation is mercifully similar to English which makes learning it much easier than say German, which has a notoriously more complex word order and verb conjugation. Although both languages are related to English, German kept its more complex grammar, where English and Swedish have largely dropped it.
The Romance languages (French, Spanish, Italian, Portuguese and a number of other languages) are famous for sharing many characteristics. It is not surprising since they all evolved from Latin. It is very common for someone who learns one of these languages to go on and learn one or two others. They are so similar at times that it seems that you can learn the others at a discounted cost in effort.
Commonalities in grammar don't just occur in related languages. Very different ones can share similar qualities as well. English and Chinese actually have similarities in their grammar, which partly makes up for some of the other difficulties with Chinese.
Cognates and borrowed vocabulary. This is one of those characteristics that make the Romance languages so similar. And in this, they also share with English. The Romance languages all have the vast majority of their vocabulary from Latin. English has borrowed much of its vocabulary directly from Latin and what it didn't get there, it just borrowed from French. There is an enormous amount of French vocabulary in English. Another reason that Spanish, French and Italian are considered easier than other languages.
There are always borrowings of vocabulary between languages, and not always between related languages. There is a surprising amount of English vocabulary in Japanese. It's a little disguised by Japanese pronunciation, but it's a nice surprise to discover it.
Sounds Obviously, languages sound different. Although all humans use basically the same sounds, there always seems to be some sounds in other languages that we just don't have in our native language. Some are strange or difficult to articulate. Some can be quite subtle. A Spanish 'o' is not exactly the same as an English 'o.' And then there are some vowel sounds in French, for example, that just don't exist in English. While a French 'r' is very different from English, a Chinese 'r' is actually very similar.
It can take some time to get comfortable with these new sounds, although I think that faking it is acceptable until you can get a better handle on them. Many people don't put enough effort into this aspect of learning and this makes some languages seem harder to learn than they need to be.
Tones A few languages use tones, a rising or falling pitch when a word is pronounced. This can be very subtle and difficult for someone who has never used tones before. This is one of the main reasons Chinese is hard for native English speakers.
Chinese isn't the only language to use tones, and not all of them are from exotic far-off lands. Swedish uses tones, although it is not nearly as complex or difficult as Chinese tones. This is the kind of thing that can only really be learned by listening to native speakers.
By the way, there are examples of tone use in English but they are very few, usually used only in specific situations, and aren't part of the pronunciation of individual words. For example, in American English it's common to raise the tone of our voice at the end of a question. It's not quite the same thing, but if you think about it that way, it might make a tone language a little less intimidating.
The writing system Some languages use a different script or writing system and this can have a major impact on whether a language is hard to learn or not. Many European languages use the same script as English but also include a few other symbols not in English to represent sounds specific to that language (think of the 'o' with a line through it in Norwegian, or the 'n' with a little squiggly over it in Spanish). These are generally not difficult to learn.
But some languages go farther and have a different alphabet altogether. Greek, Hindi, Russian and many of the other Slavic languages of Eastern Europe all use a different script. This adds to the complexity when learning a language. Some languages, like Hebrew and Arabic, are also written from right to left, further adding difficulty.
Some Asian languages, like Japanese, Korean and Chinese, all use more than one writing system. To one degree or another they use a 'Romanized' script (using letters like in English), but the real use of the language is in their unique writing forms.
Chinese is the Mother of All Difficult Writing Systems. Each word has a symbol representing it, meaning you literally have to know thousands of different symbols in order to read Chinese. Furthermore, the symbols aren't phonetic, so they give you no clues as to how they are pronounced. For example, even if you don't speak Spanish, you could guess at the pronunciation of the word 'palabra' and you would be understandable. Look at a Chinese word and you are lost. You know it or you don't. Period. This is one of the great challenges in learning Chinese.
Cultural differences Some languages actually have aspects of the culture built into the language. In English we can speak politely to a stranger, but in many European languages for example, you will actually use a different word for 'you' and a different verb conjugation depending on who you are talking to, even though you may say the same thing.
The levels of respect in Japanese take this to an extreme. You will use different words to say the same thing depending on whether you're talking to your sister, a stranger, your boss or the President. This kind of subtlety can be very tricky and certainly adds to the difficulty level of a language.
What makes one language harder or easier to learn than another is not all dependent on your native language or other languages you know. There are some absolute factors, like your intelligence, natural talent for languages, memory and listening ability. Much of this can be learned or improved with training. Individual limitations in these areas can be offset by learning how to learn languages. Master the unique skill set that language learning requires and anyone can improve their ability to learn languages.
So, is Spanish an easy language to learn? Well, if your native language is English then, yes, it is relatively easy to learn compared to some other languages. You're using the same script, pronunciation is very similar overall, the grammar is not too difficult and there is lots of familiar vocabulary. If your native language is Italian, it's even easier. If your native language was Chinese, then it's probably not easy at all. There are very few recognizable traits in Spanish.
Some languages have additional levels of complexity over others and this certainly makes some inherently harder or easier than others. But your native language will always influence your learning process. Your language learning ability will always be 'colored' by your native language, but it needn't be limited by it. Learn and absorb as you did when you were a child and 'easy' or 'hard' becomes irrelevant.
"When you're learning any language, whether it be a make-believe language or French or Italian, the agility of your mind is what's interesting."
- Nicole Kidman