Originally an acronym for Grid Cache File (Grid was an early codename for Steam), GCF is now commonly taken to mean Game Cache File. GCFs are the archive files in which Steam games are stored and official content is downloaded. GCF files can be shared between games (e.g.
source engine.gcf), and are stored in the
When a GCF is created or updated, the disk space required for it is reserved and content is subsequently downloaded to fill it. This process minimizes fragmentation, but can be slow and appear to make the Steam client freeze with older hardware and/or software.
GCF files cannot be altered, and if they could Steam would correct them when it next ran, but their contents can be viewed. Ryan "Nemesis" Gregg is the developer of HLLib, a library that can among other features read and extract GCF files, and its popular implementation GCFScape. VTFEdit is another tool that can browse GCF's even when Steam is running; the only limitation is the lack of the ability to extract folders. There is also VTF Explorer utility which allows browsing GCF files (you can browse several GCF's even when Steam is running), extracting their contents and building statistical info about files which weren't fully downloaded.
The GCF format makes keeping tabs on and moving games much easier, ensures time is not wasted by the operating system indexing or otherwise handing the game files, and keeps important data away from any custom files the user might have, which are stored under their /<account>/<game>/ folder.
GCF files can also be encrypted and stored on user's hard disks before the software it contains is released. This means that people are able to start using the software as soon as it is released and spreads the bandwidth usage on the content distribution servers by allowing downloading weeks before the release of the software.