Walsall 1 Carlisle Utd 2: 2019 has not exactly been a vintage year for Carlisle United but they certainly ended it in rare style: with a classic last-gasp win that ought to lift spirits as they head into a new and hopefully better year.

There are many miles to travel before anyone can hang their hats on the Blues but the hope must be that Harry McKirdy’s header, which dropped satisfyingly into Walsall’s net in the 93rd minute here, proves a positive first step.

In the short term, this overdue victory lifted them eight points above the relegation zone and delivered a first league win for Chris Beech. It was also a first triumph in League Two for seven games after a period of draws and that best-forgotten defeat at Colchester.

All things considered it ought to be a morale-boosting result and Carlisle certainly earned it in a second-half full of incident – and, crucially, an ability to pounce at the decisive times. McKirdy had already played a critical part in one key moment, swooping through on goal and drawing a red card challenge from Walsall’s James Clarke, when he later scented a Jack Iredale throw landing his way via Aaron Hayden in the dying moments.

His finish was as measured as his celebration was restrained. McKirdy appeared unwilling to head towards the away fans to be embraced and later posted a shushing gesture on his Instagram feed. The former Aston Villa player had been embroiled in exchanges with some supporters in United’s previous game, as well as receiving some social media abuse; answering any perceived grief with talent and skill is always a useful way forward.

Where his and Carlisle’s season goes from here remains to be seen but United can at least head to Crewe, for a testing New Year’s Day game, in the knowledge they can, after all, overcome decent opponents. Walsall had lost once in 11 games in all competitions before this, yet came loose when Beech, after an even first half, unlocked better attacking momentum from Carlisle with an interval switch from 4-3-3 to 4-4-2.

Walsall, at the outset, made five changes amid the busy fixture list; Beech has less freedom to rotate and many of his changes are currently enforced, such as Jarrad Branthwaite’s injury withdrawal, amid other illness issues in the squad. It was United, though, who made the fresher start, spending useful time in Walsall’s half as the earliest stages unfolded.

It lacked a clear-cut chance but was, at least, encouraging in the way United got onto the front foot. McKirdy was lively and Carlisle’s movement from their front three, with Stefan Scougall in support, posed Walsall some tricky initial questions.

Only once in the first 10 minutes did Darrell Clarke’s side properly venture forward, through Shay Facey; otherwise Carlisle were heading in the right direction, Mo Sagaf winning useful midfield ball, Nathan Thomas driving in positively from the left, and United one cutting pass short of a breakthrough.

This was the main problem, the Blues devoid of a final idea when in sight of the Walsall box – and, despite their ventures forward, they could still have conceded twice before the half-hour mark. The fact they didn’t owed much to Adam Collin, whose reactions were impressive to deny Caolan Lavery from close-range, and the keeper later producing another point-blank stop before Wes McDonald skied the rebound.

This kept Carlisle’s sheet clean whilst sounding a loud enough alarm. When another cross from the right came in, Gethin Jones sent a rocket the way of Iredale. United looked uncertain in these defensive moments and the recalled Iredale was being put to the test at left-back. They were, though, still intact through a lively half, and this time they took advantage afterwards.

Their most persistent spell arose from Beech’s change, Ryan Loft replacing Scougall who was apparently struggling with an ear infection. Some home attacking quickly blew out and then Carlisle broke clinically, Sagaf leading the charge and Thomas tearing to his left, seeing his first shot saved by Liam Roberts but McKirdy’s 50-50 challenge returned the ball to Thomas, and his second low attempt found the net.

United’s first goal in four games, Thomas’s fifth of the season, was a welcome sight indeed for those in the away end and Thomas had two further efforts when Carlisle imposed themselves on the Saddlers, Loft and McKirdy – now more central – dropping deep to feed their wide runners.

This lead could not last, for Walsall made their own changes and their manager’s double substitution worked the next trick. On 70 minutes they almost scrambled level, a corner leading to half-chances for Clarke and McDonald, and a minute later, their renewed pressure counting, as James Hardy escaped attention to feed McDonald to the left, and his shot crashed off the underside of the bar towards the waiting sub Elijah Adebayo, who was free to clip it home.

It felt like a shifting of direction, but McKirdy had other ideas, first with a snapshot which required keeper Roberts to be alert, and then with his keenness to pounce on some slack defensive passing, dispossessing Alfie Bates and Clarke grabbing him as he broke through on goal. It was an obvious red card and a case of the captain taking that for the team rather than the strong possibility of a Carlisle goal.

Walsall’s depleted side, which lost Adebayo to a knock soon afterwards, survived the Thomas free-kick that resulted, and also later chances forced by Thomas, Hope and Hayden (who poked a free-kick over the bar), but they could not contain the dogged finale as Carlisle kept coming. Whatever some think of McKirdy – and whatever he thinks in return – winning games this way is how to convince people, and the same goes for a team which, as a new year approaches, needs to keep delivering better days and times.

Walsall: Roberts, Sadler, Clarke, Cockerill-Mollett, Facey, Guthrie, McDonald, Holden (Hardy 66), Bates, Gordon, Lavery (Adebayo 66, Jules 78). Not used: Rose, Norman, Gaffney, Perry.

Goal: Adebayo 71

Booked: Cockerill-Mollett. Sent off: Clarke

United: Collin, G Jones, Iredale, Hayden, Webster, M Jones, Sagaf, Scougall (Loft 46), McKirdy, Thomas (Olomola 90), Hope. Not used: Gray, Mellish, Charters, Bridge, Birch.

Goals: Thomas 52, McKirdy 90

Booked: Hayden

Ref: Ben Toner

Crowd: 4,794 (376 Carlisle fans)