I'm talking about words like Plaĝo (French) & Strando (German) for 'beach' or Razeno & Gazono for 'lawn'. Is there a difference between the words or just personal preference? Maybe I'm the only one bothered by it but filling up the vocabulary with words that are nothing but duplicates seems pointless, & just means more words to learn. Koro & Kero both mean heart although the former seems to be the organ & the latter seems to refer to the playing card.
The way I see it, there are mainly four reasons.
The first two: Esperanto is a living language and Esperanto is a diaspora language. Speakers might come up with new roots (and other elements, even preopositions and pronouns) to express new concepts. That accounts for some of the duplications, since people in different places used different roots. Specially at the beginning, when communications were a lot slower, being a disapora language meant you could end up with duplications.
Third: not all speakers agree on how the language should develop. Standarization (I'll say standard for Fundamentaj/oficialaj radikoj) does happen, but it cannot (and it maybe should not) solve duplications.
For some, the language should keep on adding roots to be able to precisely define everything and to provide literature with alternatives. See: La mava lingvo. They do not only wait for it to happen, they actively try to add those roots, with the same meaning of exisiting roots or words.
Others think that the beauty and usefulness of Esperanto is the fact that with relatively few elements, a set of rules and context you can express anything. See: La bona lingvo. This is one of their efforts.
Take for example koro/kero. Check other languages and you will see that "heart" is either the only way to mentions those cards, or an accepted way. So, no need to even learn that root. We cannot demote it, because we all stand by the Fundamento, but you could ignore it and use koro and everybody will understand.
About razeno/gazono, that's another situation since neither is standard. Both mean herbotapiŝo, which you can use instead, or simple herbo as in sur la herbo.
Fourth reason: experts (fakuloj), people that know a lot about their areas of interest. They sometimes feel the language could do better and add roots at providing exact meanings. For a gardener there might be a huge difference between the grass in front of the house and herbo(tapiŝo) and that person might feel the urge to come up with gazono (those words are sometimes just borrowed from the native languages of the experts).
Knowing about the duplicated roots and words is alright. You can decide which ones to use based on your preferences, your language environment or your view of Esperanto. And you will have the standard set of roots there to back you up in case you decide to take the bona lingvo way.