Я не думаю, что есть единственный вызов API, который позволил бы это, но вы наверняка могли бы реализовать это с помощью нескольких строк в следующем подходе:
XslCompiledTransform proc = new XslCompiledTransform();
proc.Load("sheet.xsl");
XmlDocument tempResult = new XmlDocument();
using (XmlWriter xw = tempResult.CreateNavigator().AppendChild())
{
proc.Transform("input.xml", null, xw);
xw.Close();
}
XmlSerializer ser = new XmlSerializer(typeof(Foo));
Foo foo = (Foo)ser.Deserialize(new XmlNodeReader(tempResult));