Program in C?  (Without using IDE, etc)

The recipe for C programming for me is this :
WinAvrhttp://winavr.sourceforge.net/
also Procyon AVR Library http://www.mil.ufl.edu/~chrisarnold/components/microcontrollerBoard/AVR/avrlib/might come in handy as it is very feature rich and a good starting point to see some code examples.
As for an IDE... I tend to use one as it makes it easy for me to find/replace, syntax highlighting etc...
You can use Microsoft visual C++ express edition in the visual studio (there you create a Makefile project ).
You can also use Eclipse. In Eclipse under linux you can easily incorporate flashing of the device with avrdude.
I usually use an AVRISP and the AVRStudio just for flashing the device.
You can also configure the AVR Studio IDE and do your programming there with WinAVR.
So... There are many ways - and all of them rather good.
I have actually used all above ways in the past so if you decide on something let me know - I will be happy to provide details.

Cheers