In the real world, if you were sitting next to a stereo, would you prefer to instruct the person sitting next to you to load a song and hit play, or would you prefer to just do it yourself? That's the difference between a command line and a GUI: the difference between describing an action and performing it directly.
As for discoverability: saying you need to "know a language" to know that your song is in a folder, and that folders are nested, and that they reside on drives, ignores the fact that you need to know one for a command line too: you need to know the command "play" exists; you need to know that song names should be in double-quotes. You need to know the keyword "random" (rather than "shuffle"), and whether or not it understands commas.
In a GUI you can spot an icon with a musical note on it, and that's your first clue. Then you can poke around and see a round button with a triangle on it, a 40-year-old visual convention. The inherent discoverability of a visual interface is its primary advantage.
I clearly remember 15 years ago, sitting at a freshly-installed Linux command prompt, and being utterly frustrated. I wanted to explore the system, but didn't know the words. How do you discover "ls"? You can't even use "man" (if you knew about that, which I didn't) because you need to know the command in advance.