Microsoft releases XML Notepad - completely rewritten in C#
While this is no where near the level of XMLSpy or Stylus Studio, it does provide a lot of functionality for free including a search tool that supports RegEx and XPath, an XSLT transformation results view, and a schema validator. For more information on the feature set, you can read Chris Lovett's post on the Microsoft XML Team's WebLog.
In addition to the program itself, Microsoft includes the source code and a design document in the installer package. The source code package has the application itself, as well as the unit tests and what appears to be a project for compiling the help files.
Showing that unit tests are not everything, XML Notepad does ship with at least one bug. The XMLDiff tool displays the root element name in place of each of the root element attributes; all of other elements are displayed correctly. Despite the bug, this is a definite step up over trying to use a line-by-line diff tool to compare XML documents.