Henry Stafford est le seul fils d'Humphrey Stafford et de Marguerite Beaufort, fille du duc de Somerset Edmund Beaufort. Son père est le fils aîné du premier duc de Buckingham Humphrey Stafford, partisan de la maison de Lancastre. Le jeune Humphrey, grièvement blessé lors de la Première bataille de St Albans en 1455, meurt de la peste trois ans plus tard, et Henry devient l'héritier du titre de son grand-père. Celui-ci est tué à la bataille de Northampton, le . Du fait de son jeune âge, le nouveau duc de Buckingham devient pupille de la reine Élisabeth Woodville et épouse sa jeune sœur cadette Catherine (née vers 1458).