The big thing about SharePoint is it has many paths for a person to go. One cannot become an expert in all. You can be a developer, administrator, UX Designer and many related fields.
Given that you are familiar with ASP.NET and C#, you should do development. Also when it come to development, now with SharePoint 2013 everyone is trying to make moves towards apps which use a client side object model either JavaScript, Silverlight and etc... Still Server Side coding using C# is a good place to start.
I would suggest you better first get to know the concepts in SharePoint first such as Lists, Workflows, timerjobs, sites, farm, site collection, content databases and so on. Then you can work on getting familiar with Server Side API which you can use your C# knowledge.
Pluralsight courses and Microsoft Documentation are the two things that will work better as I can think. But every book has something for you.
Once you get familiar with the Sever side object model, start building apps. "Microsoft SharePoint 2013 App Development" would be a good book for you to read on that.
Learning SharePoint is a bit bigger process. You have to be patient and have the hunger to explore.