If it helps at all, the C++ surface wraps a C core [1], which supports QUIC via an opt-in Cronet dependency [2][3].
If you wanted to roll your own messaging framework, you'd probably want to build on top of at least Cronet, if not gRPC core.
[1]: The pure C core: https://github.com/grpc/grpc/tree/master/src/core
[2]: A visualization of the stacks: https://grpc.io/blog/grpc-stacks/
[3]: https://github.com/grpc/grpc/tree/master/src/core/ext/transp...
[1] https://github.com/grpc/grpc/pull/24737#discussion_r52257262...
Thank you for leaving this comment.
[1] https://github.com/grpc/grpc/pull/24737#discussion_r52257262...