These examples are based on network devices, but the same concept holds true for just about anything. If you have to make significant, identical changes to a bunch of Linux servers, is it easier to log into them one-by-one and run through a GUI or text-menu tool, or write a quick shell script that hits each box and either makes the changes or simply pulls down a few new config files and restarts some services?
And it's not just about conservation of effort -- it's also about accuracy. If you write a script, you're certain that the changes made will be identical on each box. If you're doing them all by hand, you aren't.
As to my mention of Windows earlier, I definitely use the GUI tools extensively -- while there are CLI analogues to many of the GUI interactions, that's not universal. However, when faced with a task like having to make significant permissions changes on large filesystems, I'll use fileacl 10 times out of 10.
The moral of this particular story is that GUI interfaces are fine and necessary in many cases. But they need to be built after a complete CLI is already in place, and they cannot interfere with the use of the CLI, only complement it. Otherwise, all you've done is make easy things easy and hard things much harder.