Chile marcó el ritmo del partido en el comienzo, pero esa situación no duró más de 15 minutos.
La primera peligrosa la tuvo Chile a los 10 minutos, con un potente tiro lejano de Charles Aránguiz que desvió Fernando Muslera.
Un tiro fuerte por arriba de Giorgian De Arrascaeta a los 18 minutos y una oportunidad desperdiciada por Luis Suárez a los 21 fueron de las más claras de la Celeste en la primera mitad.
Antes del cierre, un cabezazo de Martín Cáceres casi abrió el marcador pero salió a la izquierda del arquero Arias.
Para el complemento, Tabárez cambió a Nicolás Lodeiro por Nahitan Nández. La primera del segundo tiempo fue a los 47 minutos, con un cabezazo de Godín que atajó sin problemas el arquero. Enseguida, Alexis Sánchez probó desde afuera del área pero se fue por encima del travesaño.
Chille volvió a estar cerca del gol a los 56 luego de un córner anticipado en el primer palo. A los 70 tuvo la más clara hasta entonces, con un cabezazo de Díaz que José María Giménez sacó en la línea.
En la mayor parte del segundo tiempo, Uruguay casi que no atacó. No consiguió hacerle llegar pelotas claras a los delanteros.
A los 75 minutos, entró Jonathan Rodríguez por De Arrascaeta. Faltando ocho minutos, una jugada de Rodríguez por izquierda terminó en centro para Cavani que cabeceó contra el palo y puso el 1 a 0 para Uruguay.
En el cierre ingresó Sebastián Coates por Federico Valverde para aguantar en los últimos minutos.
Uruguay consiguió un triunfo muy valioso y terminó en el primer lugar del Grupo C. En cuartos de final enfrentará a Perú el sábado a las 16:00.