XPath is a language for selecting nodes in an XML document. It uses path expressions that navigate the hierarchical structure of XML. Path expressions select nodes or node-sets using steps, axes, predicates and wildcards. XPath is commonly used with XSLT to transform XML documents into other formats. It contains functions like position(), count(), and last() to retrieve information about nodes.