Rigidbody2d.MovePosition on Update vs FixedUpdate

I know it’s been discussed a lot of times already, and every single documentation tells that I should perform any action with Rigidbody on FixedUpdate.
However, I just checked “2D Roguelike” tutorial by Unity, and now I’m confused. They are calling MovePosition in coroutine (it’s the same as on Update) with Time.deltaTime. I run it by myself, and It works super fine (I don’t see any cons at least in Editor), and the code looks much cleaner with this approach.
Link for the tutorial

So, the question is: after all, what’s the correct approach to manipulate with Rigidbody? Is there any real difference between them? Maybe some performance or precise stuff, I don’t know…

because it is allowed and deferred to FixedUpdate, BUT because of that only the last call you make during Update will be executed then.
It’s legit, but not recommended.