Smoothly going from one place to another

I want a code that moves an object from one place to another smoothly and only once
Thank you :slight_smile:

https://developer.roblox.com/en-us/api-reference/class/TweenService

local TweenService = game:GetService("TweenService")
 
local part = Instance.new("Part")
part.Position = Vector3.new(0, 10, 0)
part.Anchored = true
part.BrickColor = BrickColor.new("Bright green")
part.Parent = game.Workspace
 
local goal = {}
goal.Position = Vector3.new(50, 10, 0)
 
local tweenInfo = TweenInfo.new(10, Enum.EasingStyle.Linear)
 
local tween = TweenService:Create(part, tweenInfo, goal)
 
tween:Play()
 
wait(3)
part.BrickColor = BrickColor.new("Bright red")
tween:Pause()
 
wait(2)
part.BrickColor = BrickColor.new("Bright green")
tween:Play()