We extend a recently proposed model checking-based algorithm for the evaluation of XPath queries with a cache strategy to store the results of the (most frequently) asked queries and to re-use them at occurrence. We experimentally show that, as soon as the cache is warm, the proposed optimization is quite effective. We complement our proposal with a broad experimental comparison of different strategies for XPath query processing.