1) Plenty available. I would recommend you start with PIC/AVR. Then, you choose the book necessary. Mazidi's books on PIC and AVR are among the best I've found. You can use that. It pretty much covers everything from the basics.
2) You need the IDE and compiler. You can use AVR-GCC and AVR Studio. These are free and available on the Atmel website. For PIC, you can use MPLAB and Hi-Tech C. These are also free (the latter is a free trial). I personally use mikroC for both PIC and AVR and you can take a look at mikroC. **broken link removed** mikroC compiler/IDE - Forum for Electronics
3) You can master microcontrollers and C with very little knowledge of assembly. This is not too big of a disadvantage, but knowing assembly helps you understand what's happening in the microcontroller.
4) There are too many to name. You would need the IDE and compiler (check point 2). You will need a programmer to "burn" your microcontroller. Besides that you'll need your PC for programming. You may want to buy an in-circuit debugger or circuit simulator.
Hope this helps.
Tahmid.