Personally, the way I made that breakthrough when I teaching myself programming (BASIC, 6502 assembly, Forth) was just keep on trying different things. Some things work. A lot of them did not. But any which way there was learning each step of the process. But that was back in the early 80's in a 3rd world country and I was dependent on Byte and Compute magazine articles, and what few books the dictatorial regime would allow to be imported back then. No CompuServe access. No BBS access.
With the plethora of readily available resources now, as well as a wide variety of platforms and languages, it's hard to give advice because it comes down to your learning style and areas of interest.
If you are a book learner, the Andre LaMothe books from the 90's will give you a very good grounding on how games are built from the ground up. Unfortunately, they are all out of print because any code samples were mostly focused on DOS game programming -- pre DirectX and pre OpenGL. Lots of great content there that is timeless, though and would translate to modern game programming if only they were updated. He taught not just game programming, but data structures, algorithms, memory management, architecture, messaging, physics, 3D rendering, etc.
A slightly more modern book, but also out of print is Game Programming with Managed DirectX. The author of this book also takes you from the ground up like LaMothe does, but it's in C#. Like LaMothe he also teaches algorithms, data structures, architecture, physics, messaging, 3D rendering sounds, etc. Sadly, Microsoft killed Managed DirectX in favor of the XBox's flavor is managed DirectX programming, and then later also killed that flavor as well to chagrin of non-professional XBox game developers.
I've only sampled a few Unity based game programming books. They are okay in that you can get something working, but deeper learning offered by those books I previously mentioned is lacking. I guess it's like the difference between a Captain Sulley who knows how airplanes and in particular his airplane works and reacts, vs. a Flight Sim enthusiast.
For web development, I'm sorry to say this for any professional web devs out there, but for me the most impactful learning that made all the pieces fall into place for me was the old "Nerd Dinner" tutorial. Before that, I only saw things in web dev as either serving static files, or content generated by CGIs. It took that tutorial to cement the idea of "behavior" in a web app for me.
Hopefully someone can recommend something more modern and appropriate.
Just curious more than anything, could you tell us more about your programming experience? What languages and what level you feel you are at with them.
I live my life broke, so I buy a *lot* of used books off Amazon. When they come, sometimes I show the wife the price at the barcode, often score a $60 for $6.
I don't want to give much advice on programming until I have a better feel for where you are at in your journey.
I; myself am still rather new to C#. I decided, for some reason yet to be determined, to go this route rather than C++ (Though I have had to teach myself C+ when working with Arduino).
My actual knowledge of a language may be new and limited, but Ive got decades of experience with struggling with learning; maybe I can help in that arena.
There seams to be 2 or 3 active people here (?), Ive only been here a short while, but really glad I found this place!
Just keep programming, you cant help but to get better! I started out with BASIC on a Vic-20, after getting a C-64 I continued BASIC, and then taught myself Assembly 6502 base. Then the various stuff after that; PHP, Perl, VB 6.0. Got an Arduino so I had to learn C++ (pretty cool stuff, C++ and Arduino!!!), VB.NET, Asp classic, ASP.NET, C++ and now C#.