Arduino Motor Control with PWM and totem pole

You'll need something like a MIC4422 to drive those MOSFET gates fast enough for reasonable PWM - at those power levels the switching losses will dominate and are proportional to switching time. MOSFET drivers like the MIC4422 can provide enough current to drive the gates properly for power switching (several amps if necessary). You'll need a nice beefy schottky diode to go across the motor too - or maybe a snubber network.

Realistically this isn't a project to take on without access to a current-limited 24V supply and an oscilloscope - its all too easy to blow up power MOSFETs (I do mean blow-up - eye protection is wise).

You also need to think about the stall-currents that could flow - these might be 10 to 20 times the full load current. Current monitoring is pretty much required to prevent over-current damage (MOSFET power dissipation proportional to current squared remember).