Here's how to leverage the Sitefinity Cache Manager in your projects...super easy!

How to add the Cache Manager

public virtual ICacheManager Cache
{
    get
    {
        return SystemManager.GetCacheManager(CacheManagerInstance.Global);
    }
}

How to query the Cache

GetCache.csView on GitHub
public XDocument GetXmlDocument(){
    XDocument doc = null;
    string cacheKey = "MycacheKey";
 
if (this.Cache.Contains(cacheKey))
{
    //Return the cached object
    return (this.Cache.GetData(cacheKey)) as XDocument;
}
else
{
    //Populate the object
    doc = this.GetXmlData();

    //Add object to the cache
    this.Cache.Add(cacheKey,
              doc,
               Telerik.Microsoft.Practices.EnterpriseLibrary.Caching.CacheItemPriority.Normal,
                null,
                new Telerik.Microsoft.Practices.EnterpriseLibrary.Caching.Expirations.AbsoluteTime(TimeSpan.FromMinutes(this.CacheTimeoutMinutes)));

    //Return the object
    return doc;
}

}

So there's clearly also methods to remove items from the cache as well, just as easy

RemoveCache.csView on GitHub
this.Cache.Remove(cacheKey)

Enjoy!
Credit: Elena Ganeva @ telerik