Dan Nlundulu’s first-half strike earned Cheltenham a 1-0 win at Shrewsbury.
The Southampton loanee had not scored in Sky Bet League One since September 13, but he ended his wait for a goal by touching in Ryan Jackson’s low cross from the right in the 38th minute.
Shrewsbury had been on top for much of the opening period, with Tom Bayliss firing over the bar from a good position in the 19th minute after good work from Christian Saydee.
Saydee released Rob Street in the 32nd minute and the front man beat one defender before he smashed his shot just over the top.
Cheltenham opened the scoring against the run of play and the second half was more of the same with Shrewsbury pinning their visitors into their own half.
Taylor Moore’s cross was headed over by Saydee early in the second half and Luke Southwood saved brilliantly from Jordan Shipley, pushing away his header with a full-stretch dive to his left in the 54th minute. Bayliss curled one just wide two minutes later.
Both teams saw their captain sent off in the 69th minute, with Robins skipper Charlie Raglan dismissed for a late tackle on Shipley and Luke Leahy following him down the tunnel for his involvement in the melee that followed the challenge.