I learned German on my own (or better say, I have been learning it already for 10 years).
The best way to learn any language is to forget all other languages you possess and start thinking directly in this language. Don't try to memorize German words by their similarity with the English ones (German "ich darf" and English "I dare" might seem similar, but in the reality they are not!). Don't try to find some similarities in grammar (German perfect tense "Ich habe gelesen" is similar to English "I have read", but it is often used in cases where in English you'd never use a perfect tense, like "Gestern habe ich meinen Bus verpasst" != "Yesterday I have missed (??) my bus").
The best way to learn any language is to be forced to speak this language at all times, when you are tired, drowsy, sitting in the dentist's chair with you mouth wide opened and after 4 bottles of beer. When during small operation at a dentist it suddenly started to bleed frantically my doctor, most likely because of anxiety, just fell back into his local German dialect (Schwabisch) trying to explain me what to do. It was a real challenge for me to keep understanding him, for I couldn't say any word back due to local anesthesia and immobilization of my jaw.
The best way to learn any language is to have a high motivation to do it. As long as you have a German girl- or boyfriend (who also refuses to speak any other language but German) you'll learn it with speed velocity. Apart from flirting the German friend can also be useful to correct your language mistakes. If this not not an option find something you'd love to get via German: the book of a famous German author, famous German film etc. You can boast later to your friends that you managed to read Nitsche in original.
This is how I learn languages. English was my 3rd language to learn. German was the 7th language I started from scratch when I was 23. Just be motivated and you'll master everything.