Q:

How to access specific XML element with C#

I'm working with an API that is XML only and it's been ages since I've done anything with XML.
The response is below.  
How do I get the value of <status>.   I tried doing this: 
XmlNodeList results = xmlDoc.GetElementsByTagName("ProcessRequestResult");

But I just end up with InnerText full of XML that I can't figure out how to parse correctly.
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Body>
<ProcessRequestResponse>
<ProcessRequestResult>
    <ConsumerAddEntryResponse>
          <Status>Failed</Status>

A:

Load your xml with XmlDocument and fetch the desired node with XPath. (I did not test the line but it would look like this)
The document loading process : 
var xmlDocument = new XmlDocument();
xmlDocument.Load("someXmlFile.xml");

The node(s) loading process : 
//Single node would be :
XmlNode xNode = xmlDocument.SelectSingleNode("//ConsumerAddEntryResponse/Status");

//More than 1 node would be :
XmlNodeList xNodes = xmlDocument.SelectNodes("//ConsumerAddEntryResponse/Status");

A:

How about using Linq To Xml?
var xDoc = XDocument.Parse(xml); //OR XDocument.Load(filename)
string status = xDoc.Descendants("Status").First().Value;

EDIT
The xml I used to test
string xml = @"<?xml version=""1.0"" encoding=""utf-8""?>
            <soap:Envelope xmlns:soap=""http://schemas.xmlsoap.org/soap/envelope/"" xmlns:xsi=""http://www.w3.org/2001/XMLSchema-instance"" xmlns:xsd=""http://www.w3.org/2001/XMLSchema"">
            <soap:Body>
                <ProcessRequestResponse>
                    <ProcessRequestResult>
                        <ConsumerAddEntryResponse>
                                <Status>Failed</Status>
                        </ConsumerAddEntryResponse>
                    </ProcessRequestResult>
                </ProcessRequestResponse>
            </soap:Body>
            </soap:Envelope>";

EDIT 2
 string xml = @"<?xml version=""1.0"" encoding=""utf-8""?>
            <soap:Envelope xmlns:soap=""http://schemas.xmlsoap.org/soap/envelope/"" xmlns:xsi=""http://www.w3.org/2001/XMLSchema-instance"" xmlns:xsd=""http://www.w3.org/2001/XMLSchema"">
            <soap:Body>
                <ProcessRequestResponse xmlns=""http://submission.api.domain/"">
                    <ProcessRequestResult>
                        <ConsumerAddEntryResponse>
                                <Status>Failed</Status>
                        </ConsumerAddEntryResponse>
                    </ProcessRequestResult>
                </ProcessRequestResponse>
            </soap:Body>
            </soap:Envelope>";

var xDoc = XDocument.Parse(xml);
XNamespace ns = "http://submission.api.domain/";
string status = xDoc.Descendants(ns + "Status").First().Value;

