Why did the core developers choose base64 for PSBT encoding? Why does bitcoind use baase64 to encode PSBT's? Just out of curiosity.
Since PSBTs can be fairly large, I wanted to use an encoding that compressed better than hex and was already in use and implemented by many clients. Base64 was already in use by other clients as signed messages also uses Base64. It also works well with command line without escaping or quoting so it seemed like a good choice.