Like they mentioned above the motor shield provides full functionality i.e. both directions at any speed.
If you want to achieve the same functionality without a motor shield you need to build a H-Bridge which typically consists of 4 transistors and some diodes and allows current to flow in both directions making the motor spin in one way or the other. Speed is controlled by PWM.
Without any of the above you will not be able to use a motor since the arduino is not capable of providing the necessary power making it necessary to use an external power supply which makes it necessary to use transistors for that matter.
A simple circuit consisting of 1 transistor will allow you to use a motor and control its speed in ONE direction. Depending on your needs, you might get away with such a simple circuit.