Loop problem

Hello, I would like my character to move from box to box following a array list which stores vectors 3. At the beginning, the character did not move enough because I would like the movement to be fluid. So I wanted to add a loop that works until the player has finished moving. The problem is that the character does not move and the loop seems infinite and therefore I have to restart Unity …

 public void StartTurn()
    {
        actionPoint = -1;
        for(int i = 0; i < mouvementList.Length; i++) // mouvementList.Length = 6.
        {
            do
            {
                Vector3.MoveTowards(transform.position, transform.position + mouvementList*, moveSpeed); // Move*

}

while (transform.position != transform.position + mouvementList*) ;*
}
startTurn.gameObject.SetActive(false);
playerTurn = true;
}

You always need a possible exit for a while-loop, otherwise it will run forever.
But you could use a for loop.

I managed to do what I wanted and I didn’t use while thanks anyway. I can put my code if someone wants to know how to make the character follow an array list of vector 3 in order and smoothly.