XPath SelectNodes en .NET

<Document>
  <A> 
    <B> 
      <C></C>
    </B>
  </A>
  <E>
   <F>
    <C></C>
   </F>
   <G>
    <C></C>
  </G>
 </E>
</Document>

Si cargo el XML anterior en un XmlDocument y hago un SelectSingleNode en A usando la consulta XPath // C

XmlNode oNode = oDocument.SelectSingleNode("E");
XmlNodeList oNodeList = oNode.SelectNodes("//C");

¿por qué devuelve nodos de Under B cuando lo que esperaría que suceda sería que solo devuelva nodos de Under E

¿Tener sentido

Edit: ¿Cómo haría que solo volviera de ese nodo en adelante?

Respuestas a la pregunta(4)

Su respuesta a la pregunta