Il est un grand-neveu du pape Innocent XI, l'oncle du cardinal Antonio Maria Erba-Odescalchi (1759) et le grand-oncle du cardinal Carlo Odescalchi (1823).
Benedetto Odescalchi-Erba exerce diverses fonctions au sein de la Curie romaine, notamment au Tribunal suprême de la Signature apostolique et comme vice-légat à Ferrare et à Bologne.
Il est nommé archevêque titulaire de Tessalonica en 1711 et envoyé comme nonce apostolique en Pologne.
En 1712, il est transféré comme archevêque de Milan.
Le pape Clément XI le crée cardinal lors consistoire du 30 janvier 1713.
Le cardinal Erba-Odescalchi participe au conclave de 1721, lors duquel Innocent XIII est élu pape et à ceux de 1724 (élection de Benoît XIII) et 1730 (élection de Clément XII)
En 1736 il renonce au gouvernement de son archidiocèse pour des raisons de santé et il ne participe pas au conclave de 1740 (élection de Benoît XIV).
Nonce en Pologne (1712)
Archevêque titulaire de Thessalonique (1711)
puis Archevêque de Milan (1712)
Cardinal-Prêtre (1713), puis Cardinal de Santi Nereo e Achilleo (1715)
puis Cardinal des Santi XII Apostoli (1725)