I knew this question would appear on the forums after time. When it comes down to it, there’s a fundamental difference that justifies why UE4 has a moderately steeper learning curve, and the way I see it is that Unity while it is a very good engine is Indie, UE4 on the other hand, is a AAA game engine.
With that said, learning UE4 from Unity will seem a little harder at first, but UE4 is much more improved over UDK. There are plenty of reasons to switch from Unity; Licensing, Graphics, Gameplay design with Blueprints, Modularity, and of course it has more features than the current build of Unity 4.3 that Unity 5 is trying to achieve.
Regardless, it all comes down to the simple idea that time is money, if you’re developing a game with a small studio or even by yourself, and you’d like to get your game out the door as quickly and as efficiently as possible. Then use the engine that supports your workflow for that given project. For example, Up until UE4, we made the decision to develop one of our titles on Unity because Web Player made it prevalent for that specific job, while our other titles were developed on UDK.
So when it comes down to it, learn both engines thoroughly, then make your decision as to which engine provides the best cost effectiveness per a given project.
That’s my two cents,