Basically for autocad customization you have:
lisp/autolisp
VBA
.net
ARX
The future of autocad customization will likely provide these plus VSTA (which is like the VBA of .net).
Active X is microsofts may of allowing software and APIs (VBA/VB/.net) communicate. Browse the autocad object model in the autocad help files. This is the model you will use to have your code interact with autocad. If you use a vertical product, such as land desktop it will have an object model as well.
I would recommend learning Visual Basic to start out with. Then you can program in VBA and vb.net, plus it's a good starting language.
Use VBA in autocad, and also download VB.net express edition for free from microsoft. This will allow you to create stand alone applications.
It seems like I learned the most visual basic by creating a stand alone application. Start by making a simple solver, take an equation or formula that you use often and make a form with text boxes and a solve button. If you get stuck post to one of the dot net disccusion groups for help.
http://www.vbdotnetforums.com/
Discussion groups are a great resource for learning programming.
Lisp is good for really simple customizatoin, but as you get more proficient with VBA you'll shy away from LISP.
Depending on what version/platform of autocad you are using you should have some .net sample files located in a directory similar to:
C:\Program Files\Autodesk Product\Sample\Autodesk Product API\vb.net
There are some VBA samples in the sample folder as well.
Good luck.