Theresa May was charged with giving "the speech of her life". By the end, she was relieved to have delivered one at all. At several excruciating points, May's voice almost entirely disappeared. As her coughing recurred, the Prime Minister was reduced to merely reading, rather than delivering, her speech. Tory members rallied behind her with extended standing ovations. But for journalists, it felt sadistic to watch. For a prime minister, pity is even worse than ridicule.

The loss of May's voice was a fitting metaphor for the loss of her majority – a moment from which she could never recover. On this fateful day, it didn't rain – it poured. As May sought to deliver an extended attack on Jeremy Corbyn, she was accosted by prankster Simon Brodkin, who handed her a fake P45 ("Boris asked me to give you this"). Tory MPs will note again what a gift the Foreign Secretary's machinations have been to their opponents.

For the final insult, two letters fell off the conference slogan, rendering it "building a country that works or everyon" (as opposed to "building a country that works for everyone"). One was left with the impression that the Tories couldn't run a bath, let alone the country.

Such were the maladies that afflicted the speech that it was easy to overlook its content. But suffice to say, it was banal and uninspiring. It's refrain, "the British dream", was lifted from former (and failed) Conservative leader Michael Howard and an adaptation of Ed Miliband's "British promise".

It was not only in its rhetoric that the speech resembled Miliband. May promised draft legislation for an energy price cap – the Labour policy denounced as "Marxist" by the Tories as recently as 2013. The Prime Minister is determined to be remembered for more than Brexit and to end the Tories' reflexive anti-statism. But her policy programme was incremental where it needed to be transformative.

May promised overdue investment of £2bn in affordable housing. But no figure was specified for new homes (Labour has pledged a million, Tory aides subsequently revealed that just 25,000 would be funded). The PM hailed the NHS yet denied it the extra funding that it severely needs.

May affirmed the Tories' pledge to freeze tuition fees (at £9,250) and to raise the repayment threshold to £25,000. But next to Labour's promise of fees abolition, this is timid tinkering. The Tories' repeated dismissal of Jeremy Corbyn as a "Marxist" looks feeble when they're chasing Labour's tail on housing, energy and students. May was torn between defending markets ("don't try and tell me that free markets are no longer fit for purpose") and denouncing them.

Though no government has faced a bigger task since 1945, Brexit was little mentioned. That reflected May's desire to refocus attention on her domestic agenda and the contradictions EU withdrawal presents: it is hard to champion markets as Britain leaves the world's largest one.

May will not lead her party into another general election and will struggle to be more than "the Brexit PM". But her with party unable to agree on a successor, she is left to struggle towards the finishing line. Today's croak of a speech was a painful reflection of her rise and fall.