I woudl say you can not have a threadsafe persistence framework. In all the case, you will need to handle the concurrency manually. Can you provide more precise details about how you encountered the crashes?
The purpose of the post is just to provide some general information about the different concepts provided by CoreData. The framework first lacks of a clear documentation I would say. Regarding reliability, if the rules are respected, I would consider CoreData as a reliable framework.
Regarding speed, I would say that CoreData is far lower than other low level approach. It is up to the developer to estimate the needs in term of speed/performance.
The biggest advantage of CoreData, according to me, would be the integration with the UI libraries, but this is only my opinion :)
I guess you gave the same talk at appbuilders last year right?
CoreData does not imply storing data on server. You can use it simply to model your data without persistency. The fact that CoreData is hard is that is not really well documented I would say.