I've found some books online that are free, so while they may or may not be the best, at least the price is right.
- C# Programming, by Rob Miles. Used by the University of Hull in the UK. http://www.csharpcourse.com/
- Introduction to Programming Through Game Development Using Microsoft XNA Game Studio, by Rob Miles. http://www.andrews.edu/~greenley/cs2/IntroProgXNAGameStudio_eBook.pdf
- Bookboon has some C# and Java textbooks. Their business model seems to be the textbooks are free, but with some adds in them. http://bookboon.com/en/it-programming-ebooks
I haven't had a chance to read them yet, so perhaps someone better informed then I can comment on their quality (I'm especially curious if anyone's tried the Bookboon ones).