Temperature controlled fan using Arduino

My advice would be to either:

  1. use PWM (pulse width modulation). http://arduino.cc/it/Tutorial/PWM This is my preferred method, and the most simple to implement.
  2. the fan should have more than one speed setting. If it does, hack the fan by overriding the switches for these speed settings (you'll need to take some or all of the housing apart), and connect relays to these. When it is cold in the room, turn the fan off. When it is cool, turn the fan to slow. When it is hot, turn the fan on full blast.
  3. build your own fan using a motor, then control the motor speed.

This is a similar topic to yours with responses Arduino Forum