PWM 12-24v Fan speed controller. What is the best approach to vary speed?

aspen1135:
For now, I went with these from Amazon. Whenever I buy a new component I like to have spares lying around and these come in a pack of 100 for $6 bucks! The Drain Source Resistance Specification was only 5 ohms max, so it didn't seem too bad. The Gate Source Voltage spec says a minimum of 0.8v and a max of 3v, so an Arduino should be able to switch it just fine.

That 3V is the THRESHOLD voltage. The maximum at which they START to conduct. The Rds-on of 5 Ohms is at a Vgs of 10V. That's normal for a MOSFET but not for a logic-level MOSFET. At 5V the MOSFET won't be fully ON and the resistance will be higher. They can switch 500 mA at a Vgs of 10V but they won't handle as much current at a Vgs of 5V. For switching with an Arduino pin you want a "logic level" MOSFET where the Rds-on is measured at 4.5V or 5V.