Best advice I can give is something I wish I was told when I started learning. (and I have only been playing for about 2 years). Learn your open chords with finger positions that allow ease in making barre chords or ease in moving to other open chords. By this I mean;
Normal fingers used to form the open "E" chord is the index, middle and ring. By learning to form the open "E" with your middle, ring and pinky. This allows you to hold these fingers down, slide them down 2 frets, barre the first fret with your index finger and you now are playing an "F" chord. Move everything down 2 more frets and you now have a "G" chord.
The same principle can be used with the open "A" chord. Even the more difficult "D" & "G" shaped open chords chords are easier to make a moveable barre chord by using your middle, ring and pinky fingers to form then. (this also works with the open "Am" chords, too. This is why barre chords are called "moveable chords"
Learn "anchor" positions for your fingers that also allow ease in moving between chords. An example of this (and there are many others) is any song with the chord progerssion of "C", "F" and "G". When you form the open "C" chord your ring finger
becomes anchored on the 3rd fret, second string (root note "C"). By leaving your ring finger on this string and sliding it down to the 4th fret and forming a "E" shaped barre chord you are now playing an "F" chord. Next, leave the ring finger down slide everything down 2 frets and you have a "G" chord". Now you can play a complete song with the chord progerssion of "C", "F" and "G" and never have to lift your ring finger fron the neck of your guitar. And there are many more chord progressions that this will apply to.
Hope I did not make too big of a mess in my discription. Anyway, I'm still learning, too.
Nela