Carolina Panthers running back Christian McCaffrey (22) reacts after scoring a touchdown against the Tampa Bay Buccaneers during the second quarter of an NFL football game, Sunday, Oct. 13, 2019, at Tottenham Hotspur Stadium in London. (AP Photo/Tim Ireland)

SANTA CLARA, Calif. (AP) — The 49ers haven't faced this version of Christian McCaffrey.

McCaffrey, who played college ball for Stanford, averages 4.9 yards per carry and leads the league in yards from scrimmage per game with 153.8. He is the engine powering the Carolina Panthers offense.

The last time the 49ers faced McCaffrey, Week 1 of 2017, he was a rookie. And not nearly as good. On Sunday, the 49ers will face him as one of the best players in the NFL.

"I remember him vividly," 49ers defensive coordinator Robert Saleh said Thursday. "It felt like he was a scatback, change of pace. We had a plan for him. We felt he'd get his touches but didn't think he'd hurt us."

The 49ers were right, and their plan worked. McCaffrey ran 13 times for just 47 yards (3.6 yards per carry), caught five passes for only 38 yards and scored no touchdowns during his NFL debut. The 49ers defense held him in check.

Now, McCaffrey is much more difficult to hold in check, because he's bigger, stronger and decidedly better. "He has obviously had a heck of a meal plan and a heck of a weightlifting program," Saleh said. "There's no weakness in his game."

McCaffrey became the focal point of the Panthers offense when quarterback Cam Newton injured his foot in Week 2 and Kyle Allen replaced him in the lineup. Since then, McCaffrey has touched the ball 29 times per game, and the Panthers have won four straight.

"He's not your typical scatback that you can blow on and he'll fall," Saleh said. "He runs through arm tackles. He'll make you miss. He'll run right through you. He'll outrun you. He's tremendous with the ball in his hands."

McCaffrey's versatility makes him one of the most unique running backs in the league. Last season, he ran the ball 219 times and caught 107 passes. He's such a good receiver, opposing teams occasionally cover him with a cornerback instead of a safety or a linebacker.

"He reminds me of Marshall Faulk," 49ers coach Kyle Shanahan said. "He can beat you in the pass game, he can beat you in the run game. They're doing a great job on how to use him because they are using him as much as possible. You can tell he's a very smart player, extremely talented and that's why he's being mentioned with some of the best in the league this year."

Most of the time, the 49ers don't have to contend with McCaffrey, because the Panthers and 49ers play in different divisions. But the 49ers knew they'd have to face McCaffery and other dynamic running backs eventually and have built their defense to stop players like them.

"We feel we've gotten ahead of the chains in terms of finding linebackers that can keep up with the running backs that are being used as receivers," Saleh said.

To stay ahead of the chains, San Francisco signed hyper-athletic linebacker Kwon Alexander this offseason. Alexander played the first four seasons of his career with the Tampa Bay Buccaneers, who are in the NFC South along with the Panthers.

"I've been playing Christian since he got in the league," Alexander said. "I've been playing him twice a year. He's a great player. We just have to get a body on him and get the ball from him and make him feel uncomfortable."