You don't have to use MS Visual C++, but it seems like most ppl use it these days.
* As for a start I'd go for "The Waite Group's C++ Primer Plus" (an excellent book for beginners) and a free DOS C/C++ compiler.
* "Windows Game Programming For Dummies" by Andre Lamothe is a great beginner book for getting started with DirectX.