Before you attempt college, learn basic spelling and grammar. "taught", not "teached", and "learned", not "learnt".
Here's a little hint for you: The day you say you can no longer be taught, that's the day you lose!
As far as learning a language, universities teach programming skills. They may use this language or that language, but they are not teaching a language, per se.
For instance, you may know how to loop through a series of instructions x number of times, but that doesn't teach you how to sort a list of names and addresses. And among the numerous sorting algorithms, it doesn't tell you which would be best for any one particular situation!
One instructor told me that just knowing a language (or languages, as the case may be) doesn't make you a programmer, any more than knowing math makes you a CPA (Certified Public Accountant)! That was probably one of the hardest lessons I ever had to learn when I went to the university!
Learn Assembly/Machine language first. This will give you an appreciation of everything else the computer has to do to process instructions. And take a course in engineering that teaches the internal operations of the CPU, in which you "dissect" a CPU (not literally) and learn how those binary values actually cause the CPU to solve problems, such as grabbing information from memory, adding some values together, etc. by tracing the circuit paths. (Yup - I had to do that with the ancient 8080 CPU.)
And don't limit yourself to one language. That's like a carpenter limiting himself to one tool. If all he has in his toolbox is a hammer, then after awhile, all problems begin to look like nails! You also need screw drivers, crescent wrenches, etc, etc, etc.
Programming is a lot like being a carpenter - you need to have a lot of tools, you need to know each tool well, and you need to know how to use different tools for different situations. In computers, "one size fits all" just isn't realistic.
Good luck, and "happy programming" :-)