Na primeira metade do jogo, a partida foi truncada, com poucas chances de gol de lado a lado. A situação se manteve até os 32 minutos, quando o camisa 9 fez diferença para o Caxias. A bola foi alçada na área por Michel e o centroavante Vanderlei cabeceou no canto esquerdo para abrir a contagem. Ele correu nas costas do zagueiro Fabiano Eller, o resto da zaga não acompanhou e ele subiu sozinho para mandar às redes.
Coube ao Zequinha tentar descontar o prejuízo na segunda etapa, mas apesar de tomar a iniciativa, em alguns momentos, perdeu algumas boas oportunidades de vencer. Aos 31 do segundo tempo, Xavier teve a chance de igualar o placar. Ele dominou no peito dentro da área, mas adiantou demais a bola, que foi interceptada pelo goleiro Paulo Sérgio.
Depois, o goleirão do Caxias precisou fazer grande defesa para evitar o empate. Aos 42 minutos, Adriano aproveitou sobra de bola na entrada da área e disparou um chute forte, no ângulo. Paulo Sérgio se esticou todo e conseguiu agarrar a bola. Dois minutos depois, a equipe grená matou a partida: Fabinho escapou pela esquerda em contragolpe e teve tempo de olhar para a área e cruzar. A bola passou pelo goleiro Tiago Volpi e Juninho cabeceou no contrapé para carimbar a vaga na semifinal contra Inter ou Grêmio. Pela boa campanha na fase de grupos, o Caxias jogará no Centenário, independentemente do adversário na próxima fase.