I've turned off the windows indexing service just in case.
I've rebuilt the audio cache with the console command snd_rebuildaudiocache
I can't see any other process using the CPU or disk queue during the game, although I do note that L4D2 does max out the CPU for periods.
I verified the integrity of the local file cache, and it found 3 that failed and were re-acquired. Didn't fix the issue though.
Just running around in circle with not much happening is enough to cause the glitching. Weird.