Both are commonly spoken, and they are used in exactly the same way even though a deep dive reveals a subtle difference in meaning.
The expression "for ages" is what ensures that both sentences will be interpreted as saying that I have not gone or been to the cinema in a very long time and that I am not now at the cinema. Both say that I went to the cinema at least once in my lifetime. "I have been" and "I have gone" do not by themselves contain that information, but "for ages" provides it.
The precise meaning of "I have gone" and "I have been" is not crucial to this discussion because the context of "for ages" eliminates any possible difference in meaning. Nonetheless, I will provide my interpretation of these expressions because it is valuable to hear different opinions. Not everyone thinks in the same way. Weigh the evidence yourself and decide which explanations work best for you.
"I have gone there" means that I currently have the experience of having gone there. THAT'S ALL IT MEANS. It says nothing about whether I have returned or whether I am there now. Believe it or not, it doesn't even really say that I ever even arrived there (or that I have ever actually been there). You might INFER any of these things, and you normally WILL make such inferences, but those inferences are only inferences based on context and your own experience, not on what the words actually say. If at this moment, I were to leave the house and say to my family (as I exit the door) "I have gone to the market", that statement would be correct (assuming it really is my intention to go there) even if I have never in my lifetime been to the market.