Ok so I think I found a solution, dont know if its the best but for now it servs our purpose... What this does is preaty straight forward.
I open the file as a binary array wich is loaded into a stream so it can be used in xmldocument.load method, to be procesed... If there is a better way of doing it, please tell me :)
public XmlDocument GetXMLDocument(string name)
{
XmlDocument document = new XmlDocument();
SPWeb site = GetSite();
string fileUrl = _url + libraryname + "/" + name;
SPFile temp = site.GetFile(fileUrl);
byte[] table = temp.OpenBinary();
MemoryStream stream = new MemoryStream(table);
document.Load(stream);
stream.Dispose();
return document;
}