Because web development is widely focused and I never seem to be an expert in any one technology. There’s just too much to learn.
On the surface, SharePoint might look like a single platform, but at the heart of it you will need to know a lot more than what SharePoint is. Besides learning SharePoint, you will need to learn Business Intelligence, Active Directory, Exchange, WCF, WWF, Windows Identity, and list goes on. My point is that it is just not enough to learn SharePoint, you will need to learn many other technologies that SP interacts with.
A lot of people give up on SharePoint not because there is big learning curve, but simply because the development process is much more involved than ASP.NET (ex: deploying your solution). SharePoint is ASP.NET plus everything else out there (JQuery, SilverLight, Mobile, etc.). Almost anything you can imagine, there is a way to integrate with SharePoint.
My recommendation is to learn the basics of SharePoint, then specialize in one or two areas. For example, specialize in Enterprise Content Management and Business Intelligence. Each of those areas alone have a steep learning curve. Don't expect to become a SP expert in less than 2 yrs; it may take from 2 to 7 years. Having a good knowledge of ASP.NET, C#, SQL is a plus as well.
I would say yes to your answer if by "good career move" you mean higher salary and better job security. The problem with many developers is that they get excited on a technology, for example, mobile development. They start learning it. Few months down the road, they lose interest in the technology and they start learning some other technology. As long as you focus on SharePoint and don't give up in the middle of the road (bumpy), you will be fine. :)
Focus, determination, and interest in SP is all you need :)