I'm guessing by "removenode" you actually mean, "RemoveChild", right?
Anyway, you use it to remove a child node on another XmlNode, which means you need to find that node first. Lets say you've got the following XML structure...
- <items>
-
<item>
-
<name>Test</name>
-
<value>blahblah</value>
-
</item>
-
<item>
-
<name>Valid</name>
-
<value>something</value>
-
</item>
-
</items>
... and we want to remove an item with the name of test.
The parent node, in this case, is "items"... lets assume we have an XmlNode already that is this node...
Now, itemsNode.ChildNodes will contain other XML nodes that refer to each item we have. In the example, there should be two children that are "item" nodes.
Each "item" node will also have two ChildNodes... in our case they will be "name" and "value".
So, to do our removal, we'll want to search through the "items" node to find an "item" child node. If that "item" node has a child node that is "name" and it's inner text* is "Test", we want to remove the "item" node from it's parent, the "items" node. Sorry if that sounds confusing...
*Note, with the node structure you have, the "Test" is actually a child node of the "name" node. However, since it's straight text and not more XML, the InnerText property of the "name" node will be the text we want to find. It's a blatant assumption but for the purposes of this demonstration, it's fine. You may want to have something a little more elegant in your own solution.
Attached is a quick little program I did to demonstrate this with the example XML above. Hopefully it helps you learn about this so you can apply it to your own problem.