When designing logos in Adobe Illustrator, what is the best way to save all the separate versions of the logo? In separate project (.ai) files or in separate artboards?
There's no rule about it. Whatever is easier for you to manage - files or artboards.
I tend to lean towards separate files for the simple reason if I'm asked for something like "A spot color version of Company X's Logo" I can simply send the file and I don't need to go in an pull a specific artboard from something. In addition to having RGB and CMYK files separate.
Probably if you design different versions of a logo you want to keep some elements, so using artboards would be the right choice. Also because in the same project you have more control and you are sure you are using the same color palette and you don't make any mistakes when you are under a deadline.
ps. I use artboards but may depend on your personal workflow
I use layers. I'm just kind of oldschool like that though. It's really just preference though. Personally I like to keep as few files from cluttering up my drive as possible. Artboards work well too, but I favor layers so I don't have to realign anything and I can change certain reused elements and apply them to multiple comps at once. Sometimes when I'm done I'll paste different versions to another artboard if I'm collaborating with someone else who prefers them. Just make sure your files are easy to navigate for other people if you have to work with a team and you'll be fine. If you have a particular preference amongst people in your workspace, use that.