HTML, Javascript, and CSS are a given. You have to learn them. To be good, you have to know them like the back of your hand. You need to know how far you can take them before they break, which means you need to break them. Over and over again.
Next choose a backend platform. This is where the magic starts happening. You can choose any of the popular platforms; it doesn't matter as much as you might think. You won't be able to make the magic until you MASTER your backend language. Take it over the limit. Break it. Over and over.
There will be a steep learning curve. There will be times where you hate it. You will get confused. You will get in over your head. Don't worry, you have to. All of the people you admire have been in over their heads. Being in over your head is your job.
Expectations grow steadily and the quality of our tools do not. The people that make it in this industry are the ones that can figure out how to create better experiences using our relatively over-complex and wonky tools.
When you run out of ways to break your platform, try getting closer to the metal.