First some background. Windows Live Messenger stores each contact’s message history as an XML file in “My Documents” (or “Documents” if you are on Vista) within a folder named “My Received Files\[msnid]00000\History” (where [msnid] is your Live Messenger id and the 0’s are some number that changes). Within this folder there is also a file named MessageLog.xsl. This file is used when viewing the message history to format the XML files in a nice format (using an XSL transform).
It turns out that it’s very easy to change the ordering of the message history. Within MessageLog.xsl there are several parameters (at the top of the file) that control the layout of the history view. Simply edit the <xsl:variable> named “MostRecentSessionFirst” and set it’s value to 1 your messages will now sort in descending chronological order.
There’s several other <xsl:variable>’s at the top that you can play with. I’d recommend making a backup before starting to play with this file though.