Single goal enough on windy afternoon.But the visitors held on and took the win.
The U's finished strongly and triallist Kieran Bailey forced a fine save out of Richards with a shot from the edge of the box.
But it was City who took the lead, as Bishop pounced on a loose ball on the halfway line and kept his calm to slot the ball past the onrushing Lewington.
Bonne kept probing for the U's, and twice saw shots deflected just wide.
City went close twice in quick succcession as first substitute Bishop hit the base of the post, before Lemonheigh-Evans crashed the follow up off the bar.
Kane Vincent-Young's cross was tipped over the bar by David Richards as it looked like it might drop in, before Shaquille Hunter escaped on the counter attack, only to be denied by Tosin Olufemi.
Level at the break, Tom Lapslie came off on 55 minutes and Szmodics a couple of minutes later as both got some useful minutes under their belt.
Szmodics saw the ball fall to him from a half clearance from the Robins' defence, but his shot slid the wrong side of the upright.
Sammie Szmodics and Macauley Bonne both looked lively in the first half and both could consider themselves unlucky not to have had a clearer sight of goal after some neat footwork got them into the penalty area.
At the other end, the U's went agonisingly close, as a cross from Dion Sembie-Ferris was almost turned into his own net by Zak Vyner.
The Robins should have taken the lead early on, as Tom Fry - son of former U's winger Chris - slid in Connor Lemonheigh-Evans, but he pulled his shot wide from a good position.
Both teams had chances to win a closely contested game, but it was City substitute Marley Bishop who eventually got the decisive goal in the final quarter of the match.
Colchester United U21s were edged out by a single goal by Bristol City on a windy afternoon at the Weston Homes Community Stadium.