Prime minister's questions was bound to be tricky for David Cameron today. He needed to attack Ed Miliband, who was on strong form on Monday in response to the prime minister's statement on the European summit. But Cameron could not be too aggressive because of the deep Liberal Democrat unease over the prime minister's decision to wield the British veto in Brussels on Friday.

Even with these difficulties, Cameron put in one of his strongest performances of the year at the last session of prime minister's questions before Christmas. Some government MPs were even drawing comparisons with Neil Kinnock's woeful performance during the commons debate on the Westland crisis in 1986. Margaret Thatcher went into the debate wondering whether she would still be prime minister by the end of the day. In the end she emerged stronger after Kinnock spoke for too long and lost his way.

This is why Miliband failed to score a clear hit today:

• Lack of versatility

The key moment came when Cameron delivered, with perfect timing, his pre-prepared joke in response to Miliband's inevitable jibe about tensions between the prime minister and his deputy:

No one in this house is going to be surprised that Conservatives and Liberal Democrats don't always agree about Europe. But let me reassure him he shouldn't believe everything he reads in the papers. It's not that bad. It's not like we're brothers or anything.

As Tory MPs erupted into laugher there was a pause before a chuckling Cameron added:

He certainly walked into that one.

A versatile leader with the sort of emotional intelligence required to be a truly front rank politician would have thrown the joke back at the prime minister. Miliband lacks that confidence so he just trotted out his pre-prepared joke. It was an excellent joke but it fell flat because they failed to capture the mood of the house. He said:

I think our sympathy is with the deputy prime minister. His partner goes on a business trip. He is left waiting by the phone and he hears nothing until a rambling phone call at 4am confessing to a terrible mistake.

• Lack of clarity

Cameron challenged Miliband to say what he would have done at the summit. The Labour leader came close to answering this when he told the prime minister he should re-enter the negotiations. Miliband quoted Nick Clegg as saying there was a better deal.

Miliband's careful remarks in this area show the sensitivity of the European crisis for Labour. The party can attack the government's negotiating tactics. But Labour is wary of saying that it was wrong for the prime minister to seek protections for the City of London.



• Labour's record

Miliband found once again that it is difficult to challenge the government over the rise in youth unemployment. This is because it started to rise to levels where it became a structural problem back in 2004.

The Labour leader raised this issue before Europe. The prime minister showed that David Miliband is turning into a very helpful prop when he said:

We won't take lectures from a party that put up youth unemployment by 40%. Even his brother admitted the other day that youth unemployment was not a problem invented by this government. It's been going up since 2004.

Cameron's success means that one of Miliband's main messages today, which could resonate in the years ahead, did not really strike home. This is that one of the government's central ambitions for the economy – that the private sector would pick up the slack as the public sector shrinks – is failing.

Government MPs thought Cameron was the clear winner. One said: