Balac, hijo de Zipor y rey de Moab, ve todo lo que Israel hizo a los amorreos y se aterra de ese pueblo numeroso. Moab y los ancianos de Madián se alían, y Balac envía mensajeros a Balaam, hijo de Beor, que vivía en Petor junto al río, ofreciéndole pago por maldecir a Israel. Balaam los hospeda, y esa noche Dios le dice que no vaya con ellos y que no maldiga al pueblo, porque es bendito. Balaam rechaza la invitación.
Balac insiste con príncipes más numerosos y honorables, y ofrece más. Balaam responde que ni por una casa llena de plata y oro podría ir más allá de la palabra del Señor, pero pide a los mensajeros esperar otra noche. Esa noche Dios le permite ir, con la condición de hacer solo lo que él le diga. Balaam se levanta, ensilla su asna y sale con los príncipes de Moab, aunque la ira de Dios se enciende porque va.
El ángel del Señor se pone en el camino con una espada desenvainada, y solo el asna lo ve. Se desvía hacia un campo, se aprieta contra un muro y aplasta el pie de Balaam, y finalmente se echa en un lugar estrecho. Balaam la golpea las tres veces. El Señor abre la boca del asna, que le reclama el maltrato, y luego abre los ojos de Balaam, que ve al ángel y se postra. El ángel le dice que el asna lo salvó y que solo debe hablar lo que se le indique. Balaam reconoce su pecado, se ofrece a volver, y finalmente se encuentra con Balac, quien lo lleva a Bamot-baal, desde donde ve el extremo del campamento.