如果是2个小的xml文件效率还可以. #region //method 1 XmlTextReader TestXML = new XmlTextReader(@"C:/SEPA ISO20022 CREDIT TRANSFER.xml"); XmlTextReader TargetXML = new XmlTextReader(@"c:/SEPA ISO20022 CREDIT TRANSFER_5.0SP1.xml"); bool flag = false; while (TestXML.Read()) { if (TestXML.NodeType == XmlNodeType.Element && TestXML.LocalName != "CreDtTm" && TestXML.LocalName == "ReqdExctnDt") while (TargetXML.Read()) { if (TestXML.NodeType == XmlNodeType.Element && TestXML.LocalName != TestXML.LocalName) { if (TargetXML.ReadString() != TestXML.ReadString()) { Console.WriteLine(TestXML.LocalName); Console.WriteLine(TargetXML.ReadString()); Console.WriteLine(TestXML.ReadString()); flag = true; break; } } } if (flag == true) break; } if (flag == true) Console.WriteLine("error"); else Console.WriteLine("same"); #endregion