HTTP/2 — эволюция HTTP/1.1. Главное отличие — мультиплексирование: несколько запросов идут параллельно по одному TCP-соединению, без head-of-line blocking на уровне HTTP.
Основные фичи: бинарный фрейминг (вместо текстового протокола), сжатие заголовков (HPACK), server push (сервер отправляет ресурсы до запроса), приоритизация потоков.
В Go поддержка HTTP/2 встроена в net/http — если используешь TLS, HTTP/2 включается автоматически. gRPC работает исключительно поверх HTTP/2. На практике HTTP/2 даёт заметное ускорение для веб-страниц с множеством ресурсов и для API с высоким RPS.