Norrie won 6-4, 5-7, 6-3 to progress to the last 16 – his longest run at a Masters 1000 tournament.
His win came after British number one Dan Evans was knocked out in the third round by 11th seed Diego Schwartzman.
Evans was two service holds away from victory but the Argentine recovered to seal a 5-7, 6-4, 6-0 win.
Norrie, the 21st seed, will next face American Tommy Paul, who stunned Russian fourth seed Andrey Rublev in three sets.
Victory marked a 43rd win of the season for 26-year-old Norrie, who has risen to a career-high 26th in the world.
Meanwhile in the Women’s draw at Indian Wells, top seed Karolina Pliskova was knocked out by unseeded Brazilian Beatriz Haddad Maia, who won 6-3, 7-5 to progress to the fourth round.
Czech world number three Pliskova, who reached this year’s Wimbledon final, registered 12 double faults and won just 25 percent of her second-serve points. (BBC)