Whats the best way to move a 2d rigidbody?

My 2d character has a rigidbody attached to it. What is the best way to move it? Should I modify the transform, use AddForce, or set a velocity? Answers appreciated.

For pool game I use AddForce() function

I used AddForceAtPosition()

it work normal , it was 3D game , I use this in 2D it work good!

Changing transform would be the most easiest and best way in my opinion. And instead of gravity you could shoot ray down and fake the falling and jumping effect, at least it would be more optimized solution.