I am sorry if this sounds harsh, it isn't meant to be. Some things just don't come easily.
A reference is just a special kind of value that "points at" another Perl data structure. Nothing more, nothing less. A value of a hash has to be a single value. But that value can tell you where an array is that contains a whole list of arrays. You can now do the same things that you could do with a list of values, but you have to remember to always work with one level of indirection (called dereferencing) to get at the list.
If that doesn't make sense then please do not ask a question about it. Instead go back to the code example you did not understand and look for the dereferencing. If you don't see it then read the explanations given there and other places for how you can create and destroy the reference. Play with it. Experiment with it.
Enlightenment won't all come at once, but develop the habit of first digging into your own mental resources, then asking questions, and you will both learn faster and ask more productive questions.
This is called "learning to learn" and the best way to learn that is go to work right now and figure out this concept for yourself, because nobody can hand you comprehension on a silver platter, it just does not work that way.