Quick-fire goals from Craig Westcarr, the second coming from the penalty spot, and another from substitute James Baxendale gave the Saddlers their first win over the Alex in nine attempts since 2001.
It took over an hour for the match to come to life, as Walsall's five-man midfield sucked the life out of any attacking play.
Sixty six minutes were on the clock when Westcarr's deflected shot put the visitors ahead, just seconds after Crewe goalkeeper Steve Phillips had produced a stunning save to deny Andy Butler.
Walsall doubled their lead in the 69th minute. After being clumsily fouled by Gregor Robertson, Westcarr scored his second of the game from the penalty spot, sending Phillips the wrong way.
Crewe attempted to get back in the game, with substitute Anthony Grant stinging the fingers of Richard O'Donnell and Max Clayton shooting off target.
But it was Saddlers sub Baxendale who completed the scoring and secured the points, coolly slotting his shot past Phillips after being sent through one-on-one with the Alex 'keeper.