I've tested a lot of tools which can be used to develop systems based on AVRs and finally found something ideal for me. My setup:
WinAVR is a pack of needed apps: compiler (avr-gcc) and programming tool (avrdude). We should install it first. As an IDE I use Eclipse.
The advantage of Eclipse is that I can share the same project on Windows and Linux. It supports my low-cost programmer - USBasp and I can easily change fuse bits clicking in the GUI:
To intall AVR plugin follow this tutorial.
On newer versions of Windows you can met problem with avr-gcc (error 0xc0000142):
To fix this issue you have to download fixed dll and copy to (WinAVR PATH)\utils\bin.
The last step is to add programmer in Eclipse to the AVR properties. To create new AVR project click New Project > C Project > AVR Cross Target Application > Empty Project and then set your MCU type, frequency etc.
To install USBasp in Windows the driver is needed: http://zadig.akeo.ie/. You have to choose "libusb-win32" in the driver field.