Dean's Cookbook (A and B) is where I learned from. I think you have to have a use-case for why you want to learn XS first though, but given that, and given that you can find something similar in Dean's cookbook, then you're pretty much set. And even though it hasn't been updated since 1996, it's still relevant and still a really great resource.
The hard bits of XS are understanding the typemap, and figuring out how to access all the perl variable types in C (the HV's, AV's, and RV's for example), and making sure that in doing so you don't leak memory all over the floor. To learn those I just had more use-cases, and followed perlguts very carefully.