We're seeing a lot more functionality from pages coming over to workers, but from what I'm hearing "pages is not going away" I certainly think that you get more out of the box with workers, but to Chaika's point, assets in workers is still in beta
region: Global Unless you turn on smart placement or something, they'll always run in the same cf location, close to the user, as the user is routed to
Pages Functions are just Workers under the hood, Pages Assets are stored with KV, which exists in two central locations and then is cached on edge. Same for Workers Static Assets
R2 can be pretty quick, it's not the most consistent performance though. I think ~100ms or so uncached to R2, like EWR/ORD to ENAM bucket on average is around that. Just using workers binding and not cache.
If you use cache, either with r2 custom domain or cache binding, of course gets super quick, like under 40-50ms from all locations as long as you hit cache
KV is more complex. You don't have region control, the two central stores are always EU/US. Cached it's great, espec after recent perf changes, maybe knock off 10ms from what r2 cached would be. Uncached is more complex since no region control.
They both serve very different purposes though, KV is eventually consistent, infrequent updates, lots of writes, R2 is strongly consistent, more mixed usage