Cadwallon ap Cadfan (ca. 591–634) var konge av Gwynedd. Han var sønn av Cadfan ap Iago.
Cadwallon ble konge ved sin fars død, ca. 625. Gwynedd hadde allerede en tid vært under press fra Edwin av Northumbria, og det var antagelig kort tid etter at Cadwallon hadde kommet til makten at han startet en større offensiv. Northumbrierne invaderte Anglesey. Cadwallon led nederlag og måtte flykte til Priestholm, en liten øy øst for Anglesey. Han ble der beleiret av Edwin, men klarte å flykte først til Irland og så videre til Bretagne.[1]
Omkring år 630 førte Cadwallon en hær inn i Dumnonia, hvor han møtte mercierne, som beleiret Exeter. Han inngikk en allianse med deres konge, Penda, og beseglet denne ved å gifte seg med Pendas søster.[2] Cadwallon lyktes i å gjenerobre Gwynedd, og de to kongene gikk sammen mot Northumbria. Krigen som fulgte endte i Edwins død i slaget ved Hatfield Chase i 633. Hans sønn Osfrith falt også i slaget, og sønnen Eadfrith ble tatt til fange og senere henrettet. Dette førte til at kongedømmet Northumbria ble delt i to, Deira og Bernicia.
Cadwallon utnyttet situasjonen ved å fortsette med plyndringstokt inn i Northumbria, men nå uten Pendas hjelp. Han erobret York, og Osric av Deira falt da han forsøkte å beleire byen. Cadwallons styrker brøt ut og kom seg i sikkerhet. Kong Eanfrith av Bernicia ble også drept av Cadwallon, etter mislykkede fredssamtaler.
I 634 møtte Cadwallons hær, som var utslitt og dårlig utstyrt etter tapet av York, Oswald av Bernicia. I slaget ved Heavenfield flyktet Cadwallons styrker, og han ble selv drept.