I don't have any permanent solutions, but this is usually what I tell others when they begin experiencing crashes.
- Go to your Steam Library
- Right Click on Team Fortress 2
- Open Properties > Local Files > Browse
- In TF2's folder, search for "sound.cache"
- Delete all sound.cache files
Afterwards, launch TF2 or verify the integrity of your game files through Steam. You
should be good for a while.