If you have these questions then I recommend using a database or serialised text file, XML is much less efficient.
It really depends on the size of the XML file, there is an overhead for each file, but the size of the file is very important, where possible try to load as little as possible.
simpleXML is not the most efficient method, but it is the most flexable. The most efficient method depends a lot on what you are doing, if you want to add a row, then it is faster to not use a lib, just edit the file with normal text editing functions. If you want to read the whole file and parse it multiple times, then it's better to use a multi-dimensional array and the xml_parse function.
XML is parsed once, edits once it's parsed will not have an effect, but an edit while it is being read might cause problems. That is why there is such a thing as a file lock, which should be used.