There are no guarantees for these issues. I did work as a QSL sorter/manager (assignments are by letters of the alphabet, per call area) and got a pretty good feel for this; and also have used the Bureau (both ways) for 35+ years of QSLing, so have a good feel for the user perspective, too.
My impression regarding "how long" is: Shortest possible time is 3 weeks, one way. There is no "longest" possible time, since mail carried via sea routes have no guaranteed delivery period and also cards are only bulk mailed once an appropriate quantity are compiled. This will vary with season and other factors. The Bureaus are probably "most busy," both outgoing and incoming, during DX contest season, which is from November through May. From June through October is the doldrums, although there is an IARU contest in there, and some IOTA stuff.
Since I have many relatives overseas, I can easily check how long it takes ordinary posted (non-air) mail to reach places, and it can be a long time. To Germany, about 3 weeks. To the Philippines, about two months. That's one-way, without delays for sorting and compiling by bureaus.
I mailed a first-class letter from Rio deJaneiro to Sao Paulo, Brazil (within the same country) and it took 2-1/2 weeks to get there. Think about that one.
Patience is a virtue, for sure.
"Long delayed QSLs" are the norm, especially via Bureau services -- nobody to blame. I just recently (about 8 weeks ago) received a QSL card from a station in "East Berlin" (which no longer exists), for a QSO made in 1980, only 22 years ago.
As for "GS" vs. "free," you cannot mail IRC's or "green stamps" via the bureau, so this doesn't apply, there. For direct-mailed cards, a "GS" or two along with a self-addressed envelope does seem to assure a much higher direct return rate, regardless of mode operated. I would expect that even for a direct-mailed card, if I did not include an SAE and either cash or IRC's, my return card would be via the Bureau.