Whether you use diodes or resistors, the same amount of heat will be generated. Diodes just give you better control of the amount of voltage dropped.
A 12V 80W fan will draw 6.7A at 12V. At lower voltages it will draw less current.
What voltages do you need to provide to your fan? If you need, for example, 12V and 8V, then you could generate the 8V using a buck switching converter. These are fairly efficient so less heat will be generated.
If the fan draws 4.5A at 8V, or 35.6W, and the buck regulator is 80% efficient, it will dissipate 20% of 35.6W which is 7W. This is still a significant amount of power, but a lot less than a linear voltage dropping solution.
If you need multiple speeds, or if the low speed needs more than 8V, a switching supply may not be worthwhile.
Another option is PWM (pulse width modulation), where the full voltage is applied to the fan, but not constantly. A circuit switches the voltage ON and OFF, and the ratio of ON to OFF determines the average voltage, and therefore the speed, of the fan. PWM does generate interference though; a switching converter is a cleaner option.
Google PWM fan speed control and check out
http://en.wikipedia.org/wiki/Fan_control
Tell us more about your requirements and we will be able to recommend a design.
P.S. Oh, and welcome to Electronics Point