John of Gaunt's scandalous Duchess

"Men of title and privilege simply do not marry their mistresses," insisted our late Queen Mother. Those who do, noted the late Jimmy Goldsmith, who did himself, "create a vacancy".

When John of Gaunt – Duke of Lancaster, son of Edward III, uncle of Richard II, father of Henry IV, and the richest and most hated man in England – married "his unspeakable concubine", Katherine Swynford, in 1396, the position she vacated was never filled.

No doubt this had less to do with marital bliss than venereal disease. Four years later he died in agony, of "putrification of the genitals". Katherine survived him for five years.

During the 20 years she was his mistress, Katherine bore a bargeful of abuse and a bevy of bastards, who began the line of Beaufort. None of us needs reminding that royal mistresses, however loyal, are never much liked and Katherine, pretty, poor and strong as an ox, was no exception.

A member of the royal household, she caught the eye of the duke soon after he married his second wife, Constance, following the death of his first, Blanche. If he married Blanche for money and Constance for Castille, his marriage to Katherine seems to have been for love, and while theirs might not have been "the greatest and one of the most poignant love affairs in English history", as Alison Weir calls it, it was certainly a feat of endurance.

Weir also calls their relationship as a "marriage of true minds", but we can have little idea what their minds were like. We do know that they were sexually compatible (their marriage was "consummated", Katherine told the pope, by "carnal copulation"), he showered her with gifts, gave her up for a period when his reputation needed a whitewash, and married her against the advice of almost everyone after Constance died; Katherine was in her forties, he in his fifties.

"Everyone was amazed at the miracle of this event," wrote Thomas Walsingham, "since the fortune of such a woman in no way matched a magnate of such exalted birth." Katherine was the daughter of a herald and widow of a knight; her sister, Philippa, was the wife of Geoffrey Chaucer.

With the legal union of their parents and a small shift in the law, the four Beaufort children became legitimised and powerful. Katherine, whose descendant Margaret Beaufort was the mother of Henry VII, was the great-grandmother of kings.

If, like me, you come to Katherine from an adolescent love of Anya Seton's novel Katherine – 95th in the 100 favourite books in the BBC's Big Read in 2003 – you will be full of anticipation on opening Weir's version of the story.

Weir, an acclaimed popular historian, is aware of her precursor. Her book begins with a discussion of Seton's "epic novel" which, she says, "still has the power to move me today", and ends with an appendix explaining that Seton was writing a romance in the style of Gone With the Wind, rather than researching the life of a 14th century woman.

Katherine might not be the spirited heroine of Seton's imagination, but it is harder still to see her as the feminist pioneer Weir suggests, who "took control of her own destiny". That was pretty much controlled by John of Gaunt.

The firm distinction between "romance" and "history" might seem disingenuous, given that Weir more than once calls her own book a "love story", but there is no doubting her historical credentials. She has a sure grasp of the sexual politics of the late Middle Ages. Her descriptions of the Peasants' Revolt and the Black Death are gripping. For those who want more facts than feelings, this immaculately researched book fits the bill.

In fact, it is history forged very much out of bills: every bill ever exchanged between the duke and his concubine is uncovered, translated into contemporary currency and parsed for what it says about the couple's relations. While this gives a very precise account of Katherine and John's very precise accounts, one yearns for a little more of the "love story" the book promises, and for John of Gaunt to flash one of his famous Clark Gable smiles.