I encountered this peculiar problem where I would launch Xcode with an existing project open and it would go into never-ending beachball. Even all the usual clearing of caches, didn't fix it.
rm -rf ~/Library/Developer/Xcode/DerivedData/ ~/Library/Caches/com.apple.dt.Xcode ~/Library/Preferences/com.apple.Xcode.plist
I finally stumbled on something that work. I noticed that Project Navigator isn't correctly displaying the version control indicator beside every file and the entries that do appear are random each time I restart Xcode (and it beachballs). This was a fairly large project with many files in git.
Turns out disabling Source Control in Xcode Preferences fixed it. I use git from the command line so that worked out fine for me.