In your code above, i is already the object you want to destroy the GameObject of, but you're then trying to use it as an index into the list
Basically just use i instead, and probably name i better so it's a little more obvious (i is generally used for the index, not an object from the collection)