People, people, people. Never forget you are designing these things for people. For UX as opposed to Interaction Design. The most important thing is to want to and try to understand people. Be ready to try and understand their motives and their needs (not yours overlaid on theirs). When the user talks listen to what they are actually saying, and be ready to change your mind and be proved wrong.
Experience can get you a long way, the more people you interview/watch/study, the more you will learn that people are the same, but very different. Learn a combination of qualitative and quantitative skills. Get comfortable with talking to random people in the street, it will help you be a better UX'er.
Try cafe testing, buy some chocolate bars and ask people to carry out tasks on your laptop. Test websites that are not yours, test what you like and what you don't like, don't bias them while testing and listen.
That, for me means wireframes are not the key delivery for UX, it is understanding and documenting the users tasks and how it can be satisfied by your interfaces (that may well be wireframes)
For interaction design I would agree wireframes (and prototypes, if you code) are the key delivery.
Yeah, learn all the tools, Balsamiq, Axure, photoshop, find a favourite but don't become exclusive as it is only a tool to complete the task you want. Get comfortable in using paper, so you can pick the right tool for the job.