<p>I have a program I've written in VB.NET 2005, it saves statistics in an XML file.  </p>

<p>I use this program on multiple computers.   I'd like to set up a webserver where I can upload my XML file, or just the data, and add it to the server ignoring duplicate entries already on the server.  </p>

<p>What do I need for to learn for this? SQL?  </p>

<p>Any ideas would be appriecated!</p>

I did something like this a long time ago to send back HFNetChk XML reports from around the world back to a central server.
I set up a service endpoint on the server (webservice, TCP, whatever fits your req's), and had the client app send the finished XML back to the central server when it was done with its processing.  The webserver would send back a "data received OK" message to let the client know it could move on, and then the server would go about processing the data, and entering it from the XML into a SQL database.
So, to answer your question,
learn how to create a WCF service (aim for webservices for now - ASMX is ok if WCF seems to be too much for now), and learn how to parse the incoming XML and insert it into meaningful SQL tables.
/fark can be useful