If you can upload in binary format, do so. If your source platform cannot use binary, then use base64. Base64-encoded data is approximately 33% larger, meaning longer upload times, more bandwidth used, and a lower maximum file size for non-multipart uploads.
You can insert or update blob data using a non-multipart message, but you are limited to 50 MB of text data or 37.5 MB of base64–encoded data.
Consider the following:
Plain Text
Hello World
Base64-encoded Text
SGVsbG8gV29ybGQ=
As you can see, the data is already longer, and this is a very short message. The longer the message, the more "waste" that will be involved.
There is literally no advantage to using base64-encoded data; this option is provided only for greater compatibility with systems that do not support binary file uploads.