McGoldrick and Carl Baker, who have 12 goals between them in City's last eight matches, scored two goals each and ensured Robins' team recovered from going behind to an early own goal from full-back Blair Adams.
Baker equalised in the 29th minute before McGoldrick scored twice before the break to take his season tally to 15.
Cyrus Christie added a fourth just after the hour-mark before Walsall skipper Andy Butler was sent off late on for a second booking.
Baker hit his second and Coventry's fifth six minutes from time to make it just one defeat in 10 matches.
Smith said: "I thought we started the game really well and we fancied ourselves to come here and get something.
"I don't think we handled David McGoldrick, who is a class above this level, but we were still in the game at 2-1 and there was a foul on Richard Taundry for the third.
"There is no way that he would have that body shape unless he had a push in the back. For the fourth goal, they had a player standing in front of our goalkeeper two yards offside.
"I'm talking about the official, but I won't let that detract from our defending because that was not good enough.
"I had a rant at the players at half-time because they were getting through too often and I thought we were a bit more organised in the second-half."