I found switching from channels to plain ol' queues to be an enormous performance improvement in a program sending hundreds of millions of messages, though I do agree in general that most programmers won't need to care about it.
The program was a financial model backtesting framework which I ended up rewriting in Rust because Go was simply too slow for what I wanted to do.