Hi Rob,
After using C-ISAM and ProISAM for many years, I would say that C-ISAM is the better.
The main advantage, is that the data is separate from the index, and its normally the index that gets corrupted. Having the data part of the file separately gives you more options and makes it easier to recover the file in the event of any disasters.
There is very little that can corrupt either file types though, apart from a hard shutdown, from what I've seen, as long as you keep up good practices and keep your system in shape.
So that includes things like:
1) Any time there is a machine crash of any type, the system should be taken offline and ischk'ed / BCheked.
2) Keep watch of file sizes etc for ProISAM limits.
3) Watch out for things like Clr Flags on files that are accessed simultaneously (this can corrupt the file, if other people are accessing it and it gets cleared)
4) Backups. Make sure everyone is off the system, and no file is 'open' while taking the backup (Or some kind of shadow/split system that can backup 'live' files)
5) Not necessarily going to help with corruption as such, but is generally a good idea.... Doing defrags and isout/isin's to keep the data in a good shape periodically. This would also involve doing ischk/bcheck first to check everything is good first. If there is some weird corruption somewhere, then its best to catch it as early as possible so that it doesn't get worse and corrupt more, and more data can be 'saved'.
Following good procedures like these means I've only ever seen file corruption if we had a hard system crash. As in an unexpected reboot while users were accessing the files or some kind of disk failures. (Although there have been a few instances of ProISAM corruption in the past due to bugs in the kernel, but they are normally around 'new kernels' when I've upgraded systems.)
HTHs, Rob.