erstmal kannst du statt eines Namens auch einen Index angeben
Delphi-Quellcode:
// nimmt den 2. Node
myFirstXML.DocumentElement.ChildNodes['array'].ChildNodes['dict'].ChildNodes[1].Text
// nimmt hoffentlich den .2 Node mit dem Namen "key"
myFirstXML.DocumentElement.ChildNodes['array'].ChildNodes['dict'].ChildNodes['key[1]'].Text
Ansonsten kannst du auch mal in wikipedia.de nach "XPath" schauen.