Where is rclone vfs --cache-dir by default?

I trust that your results are accurate, but I just can't replicate those results.

Apparently it does (return to the OS) for me - long before the background upload completes.
Note that I am on windows, so I guess it's not impossible that this difference might be down to some difference in either the OSes, or Winsfv / FUSE implementations.

I threw together a quick batch to demonstrate (excuse my primitive scripting)

TLDR:
Directly to remote (no cache) = about a minute
To mount via VFS cache = 4'ish seconds
To local SSD (same drive as cache) = 6'ish seconds
I consider the last two results the same, especially given that under the third test the SSD was also busy reading for the cache to upload in the background.

I was manually watching network while in progress. First test returns after upload done. Right after second test returns, it's upload starts, and the third test is done long before the background upload from test 2 finishes.

This exactly mirrors what I see if I just move a single big file over within Windows explorer. It transfers for a few seconds then completes and closes. Only large batches end up keeping the copy window open (due to the reasons described earlier).