How do you recommend I learn the cases? They all seem so difficult.
I would recommend a lot of practice in using them in their varied uses. I haven't studied Ukrainian, but I have (sort of) studied other case based languages, E.g. Polish, Old English, Latin; with some of them you can just memorize a few declensions, but Slavic languages are tricky with their hard and soft stems. The way I see it, you could just memorize the hard and soft endings (and whatever else there is) as separate sets or declensions, or just practice with the individual endings, and eventually they'll come to you.
They don't really teach them as a unified whole. They just break it down, which is fine for German, which has only four cases and only inflects adjectives and articles, but Polish and Ukrainian have seven cases each, and several sets of endings, Ukrainian especially, by the looks of its Wikipedia Grammar page, which has four declensions, some with hard and soft and mixed versions. Now that I've really looked at Ukrainian, I would recommend starting with a certain class of nouns (first declension hard nouns, for example. You could do just the singular or both the singular and the plural, depending on what you're comfortable with), memorizing their declension, and practicing with that until you know it backwards and forwards. Then move on to the next class, and do the same. It will probably take a while, but it will be thorough if you do it right.