Here’s the reality of things - learning how to make a cube spin in C++ in UE4 is trivial. The reason why people say “it’ll take you years” is not that C++ itself is THAT hard. The thing that is hard, and this applies to both BP and C++ is system design, something a lot of people simply omit, or at best glaze over. The moment you start creating a complex game, you’ll start to design systems that need to intricately work with each other, each more complex than the last. For example, a very simple on-rails shooter game needs to have a class for your units, which interacts with some sort of damage and combat system, which in turn has to interact with the power-ups system, all of which needs to be spawned with some sort of “level timeline” system. All of this needs to tie in to the UI, the level loading / saving, some sort of cutscene / cinematic system that has to make use of your dialog system (which loops back into UI). Once all of that is done you need to set up ship upgrades etc etc etc.
Designing those systems to be streamlined, extensive and talk with each other properly takes years of experience. If you were to give that simple game above to a newcomer and someone with half a decade of experience, the end result would be very different. As a simple example, if I were to ask you how long it takes to import a static mesh into UE4, you might say “10 seconds of import time if your PC is slow, 5 otherwise”. A developer with a lot of experience will tell you “10-15 minutes at least” because they’d know that once you have a mesh imported you need to set up their distance field scale, lightmap settings, LOD + LOD materials, all those little things that make a world of difference in a professionally made game. Hell, I think a Skeletal Mesh takes at least an hour of setup after it’s imported to properly adjust which bones are active per LOD etc.
Never underestimate the value of experience.