Motor control

Hi, I'm trying to figure out the best way to turn a motor on and off with arduino. I have a motor that when it starts it draws around 9 amps peak but runs at about 2 amp continuous. It runs off of an 18v dc supply. My options as I see it are use a high low relay board to turn it on. Or use a MOSFET and turn it on. Are their any other options that I'm not considering and also will the 18v be kept safe using the relay ( I don't want to spike voltage back into the arduino.

Any help would be much appreciated

Scanning down this list, I see this guy.

Do you need bidirectional control?

Do you need speed control?

If so then a motor driver like manor_royal mentioned makes things easy. If you just need to turn it on an off a beefy low resistance Logic level N-channel mosfet should work nicely. Like an irlb3034 mosfet.