GC was a mistake. The main reason it is still used outside scripting languages is the notion that non-GC languages need to be low level. Which in practice is kind of true just because we haven't had any real competition in that area.
Typical programmer is taught nothing about memory management, till maybe they learn bits and pieces (often by hearsay and cargo culting). It doesn't matter if we're talking manual or automatic. Without such understanding one cannot write performant code or make a good architecture.
Also - a good working definition of low-level language is language that makes you care about things irrelevant to your task...
But it helps. And is something you need to reason about regardless. Being explicit about it isn't a huge overhead but has lots of benefits.
Now we also have rust, but rust is new and also has a low-level aura, making comparisons to high-level languages difficult.
That Go has a GC is a shame, such a missed opportunity.