Is there some way to remove and destroy gameobject from list once?

When i remove and destory gameobject list.
I just type like this.

   List<GameObject> list = new List<GameObject>();

    for (int i = list.Count-1; i>0; i--)
    {
        GameObject o = list*;*

cardBunch.RemoveAt(i);
// → I think these 2 lines make 1 line.
}
I think some way to improve this. but i have no clue or something… so if you have any suggestion please tell me. thanks!

You could just use a foreach loop

        List<GameObject> MyList = new List<GameObject>();
       
        foreach (var gameObject in MyList)
        {
            Destroy(gameObject);
        }

        MyList.Clear();