Need Help with controlling a motor and servo independently using Serial.read()

The code you have posted has no line
myServo.write (Serial.read())

Serial.read() reads a single byte

This means if you send the characters "20"

your code reads in

Direction = Serial.read();

and then Direction has value '2'
next iteration of your loop
and then Direction has value '0'

it is not as easy as
myServo.write (Serial.read()

Some of your commands are one byte some are two bytes.
Your code needs some kind of logic to determine if it is a one byte or a two byte command

This is possible. But I suggest something different
make your App send a command-start-character the command itself and a command-end-character
ussually command start is a '<'
and
command-end is a '>'

this means your commands look like this


<10>
<20>
etc.

for this you need a better receive-logic than just

Direction = Serial.read();

So read this tutorial to get familiar with serial receiving

best regards Stefan