A lot of people recommend C before C++ because there is a huge paradigm shift when going from an OOP to a procedural language. The transition backwards can be more difficult because you have to forgo many of the concepts of C++, whereas going from C to C++ you can apply additional concepts to a base knowledge.
If you're going to sit at home and write your own programs for your own personal use, either language will do. If you decide to get involved in a project, C is still the dominate language (for example the GTK+ tool kit, Linux Kernel, BSD kernel, enlightenment, GNOME, and a miriad of other C OpenSource projects). C++ hasn't caught on as much because there are still many old programmers out there who refuse to use it, and the concepts of OOP are not always required for a project. There are a few OOP projects out there (QT, KDE) but not as many as good'ol C.
My $.02
As far as good books go, Two of the best I've encounterd are:
C A Modern Approach by K.N. King
Pointers On C byKenneth A. Reek
The K.N. King book is the better of the two, but they are both superb books.