The reason is the Namespace "withoutPrefix" which is defined without any Prefix, applying to all "nacked" nodes.
To retrieve the first title node, a "default" Prefix has to be added to the Namespacemanger.
Add the defined Prefix to your xPath-Expression and you 'll get the node.
<rootnode>
<firstnode xmlns="withoutPrefix" xmlns:inf="withPrefix">
<title>the first title</title>
<inf:type>nonsense</inf:type>
</firstnode>
<secondnode xmlns:inf="withPrefix">
<title>the second title</title>
<inf:type>crap</inf:type>
</secondnode>
</rootnode>
nsmgr.AddNamespace("default", "withoutPrefix");
string xPath = "//default:title");