Knowing programming is the key, not the language. I'm always concerned when I see someone struggle with a particular language because I know what they need is the fundamentals, language is not nearly as important. No one who really knows how to program has problems with any language. So what you need to do is find a resource that teaches fundamentals in a way you can understand, and the rest will come easily IF you possess the brain that can code. Don't choose a hard to understand resource just because it's C#.
I like to compare it to cooking.
So I looked at the recipe, figured out how to chop carrots, measure spices, and pour oil into a pan, but it's still not working for me. Right, because you have to learn how to COOK. I can't cook worth a crap.
I despise Oracle, but this brief little tutorial covers some important concepts.http://docs.oracle.com/javase/tutorial/java/concepts/
I especially like this sentence:
The syntax of the Java programming language will look new to you, but the design of this class is based on the previous discussion of bicycle objects.
Makes my point above. Language and syntax are minor compared to the concepts needed to write good code.