Эффективный способ - использовать strings.Builder. Он накапливает данные во внутреннем буфере и минимизирует аллокации. Конкатенация через + в цикле создаёт новую строку на каждом шаге (O(n^2) по времени и памяти).
var b strings.Builder
for _, s := range parts {
b.WriteString(s)
}
result := b.String()