Fonts compete for available bandwidth and out of necessity have to be referenced as external files, rather than being inlined as can be done with essential CSS to avoid a FOUC (Flash of Unstyled Content). There's an inherent trade-off in how you include fonts. You could go extreme towards making the page immediately useful, delaying any font download until absolutely everything else has loaded (since arguably even Javascript does more for functionality than fonts), or extreme the other way, hiding all content until fonts in use have downloaded to avoid a FOUC or reflow. And of course there are compromises in the middle, but there doesn't seem to be a best of both worlds that gets both fastest time to a useful page and guarantees no FOUC, especially if you have a lot of fonts.
How have others approached this? Are there better approaches I'm not considering? Is it just dependent on what the speed/usability/appeal goals are page to page?