Hey there!
The difference is that y = kx means the "y directly varies with x", which means that y/x = k. Also, the line of the graph passes directly through the origin. Or, in other words, there is no y - intercept other than (0, 0)
y = mx could have a y - intercept not at the origin. If you have an equation in slope - intercept form, such as y = 5x + 3, than "y" does not directly vary with "x", because you can't get "m" by doing y/x, because first you have to subtract 3. In order to actually find "m", you would have to do (y - 3) / x = m (or, in this case, 5).
Hope this helps! Good luck and have a great day!