I came accorss these when learning Goutte but I don't know how are they different?
filterXPath
allows you to filter by an XPath expression, while filter
allows you to filter by CSS selector.
Ex:
$crawler = $crawler->filterXPath('descendant-or-self::body/p');
$crawler = $crawler->filter('body > p');