An MRI revealed the left-hander has a strained rotator cuff and inflammation in his throwing shoulder. He'll be replaced by rookie right-hander Shelby Miller.
Garcia's health was a concern after he missed two months this season with shoulder fatigue, but he had pitched well since returning in mid-August and won his past three regular-season starts. He said he had experienced some "normal stiffness" from those late-season games, but the feeling in the shoulder was different when took the mound Monday against the Washington Nationals.
"We're in the playoffs," Garcia said. "I want to be there for my team. I want to be able to help out, but I just realized that once the game started, it never got better. I never got warm, and I had to say something. I made the decision. I said something at the right time, and we still won the game. It was a really hard decision for me to say something."
The St. Louis Post-Dispatch reported late Monday that several members of the Cardinals were angry when they learned Garcia decided to pitch in the pivotal Game 2 without revealing his condition to the team. The Post-Dispatch also reported that a faction in the Cardinals organization is skeptical about the seriousness of Garcia's injury.
The Cardinals' 12-4 victory Monday evened the series at 1-1, with the series moving to Washington for Game 3 on Wednesday.
Cardinals manager Mike Matheny dismissed suggestions that Garcia should have spoken up about a possible problem before starting such a crucial game.
"He went back and forth just like every guy does," Matheny said. "You don't know exactly how you're going to feel until you get out there. There are times you don't feel good, and I know that we have had some pitchers wondering if they can make pitch one, and next thing you know, they are standing on top of the mound in the eighth inning.
"I respect these guys' preparation that they have going into a game, how they push through things, and try and make something out of nothing at times. If you waited around until you felt perfect, you would never play this game."
Garcia, 26, was scheduled to have a second opinion later Tuesday. The four-year veteran made 20 starts this season, going 7-7 with a 3.92 ERA.
Lance Lynn, who pitched three innings in relief and picked up the Game 2 win, will take Garcia's spot in the rotation if the Cardinals advance to the next round.
Miller, one of the top pitching prospects in baseball, appeared in six games this season as a September call-up. He worked 13 2/3 innings with a 1.32 ERA.
Information from The Associated Press was used in this report.