You're right about learning Music theory, there's really no way you can produce catchy-sounding melodies or basslines. And you should really learn how to program sound using VSTs. They come in handy for VSTs like Sylenth or Nexus. Lastly, try to get your hands on Z3ta, Sylenth, Massive, Nexus, and Kontakt as they are really really good Synths/VSTs for EDM.
Check out the reddit compilation of guides. There's more than enough information there to get you started. If it were me, I'd stick to one building style first. Then move on to the next once i've got it.