Police in London, Ontario, citing witnesses, said that 20-year-old Nathaniel Veltman, jumped the curb in his vehicle on Sunday, struck five members of the family, ranging in age from 9 to 74, and then drove off at high speed.
Veltman, a resident of London who was arrested after the incident, has been charged with four counts of first-degree murder and one count of attempted murder. He is due back in court on Thursday after being remanded to custody on Monday.
"There is evidence that this was a planned, premeditated act, motivated by hate," Detective Superintendent Paul Waight of the London police department told reporters.
"We believe the victims were targeted because of their Islamic faith," Waight said, Reuters reported.
He added that police in London - 200 km (120 miles) southwest of Toronto - were consulting with the Royal Canadian Mounted Police and prosecutors about potentially filing terrorism charges.
The suspect does not have a criminal record, and is not known to be a member of a hate group, police said. He was arrested in a mall parking lot without incident while wearing a body-armor-type vest, police said. There is no evidence he had any accomplices. It was not immediately known if the suspect had hired a lawyer.
Police have not yet released the victims' names, but the London Free Press said that among the dead were Syed Afzaal, 46, his wife, Madiha Salman, 44, and their 15-year-old daughter, Yumnah Afzaal. Syed Afzaal’s 74-year-old mother, whose name is not yet confirmed, also died. Their 9-year-old son, Faez Afzaal, is in the hospital with serious but non-life-threatening injuries.
The family immigrated from Pakistan about 14 years ago, according to media reports.
Eyewitness Paige Martin told reporters a black truck blasted past her and ran a red light as she was walking, and then she came upon the scene and saw "chaos": "It was just absolutely like something that you never want to see."
The attack was the worst against Canadian Muslims since a man gunned down six members of a Quebec City mosque in 2017. London Mayor Ed Holder said it was the worst mass murder his city had ever seen.
"We grieve for the family, three generations of whom are now deceased," Holder told reporters. "This was an act of mass murder, perpetrated against Muslims, against Londoners, and rooted in unspeakable hatred."
Canadian Prime Minister Justin Trudeau said on Twitter that he was "horrified" by the news, adding that "Islamophobia has no place in any of our communities. This hate is insidious and despicable - and it must stop."
Ontario Premier Doug Ford tweeted that "justice must be served for the horrific act of hatred that took place."
By late evening on Monday, a steady stream of mourners was seen arriving near the scene of the attack, dropping off flowers and saying prayers. One placard read: "When does it stop? Enough."
A GoFundMe campaign in support of members of the victims' family had already raised almost C$120,000 ($99,000) in one hour.
A vigil has been organized at a local mosque on Tuesday night to remember the victims.
"This is a terrorist attack on Canadian soil, and should be treated as such," said Mustafa Farooq, head of the National Council of Canadian Muslims.
London, which has about 400,000 residents, has a large Muslim community and Holder said Arabic is the second-most-spoken language to English in the city.
The teenage girl who was killed "will be deeply missed by fellow students and staff at Oakridge Secondary School," according to a school statement.
One man who described himself as a neighbor in an interview with Global News, said he met with the family on holidays.
"He was a family guy, very much involved in the community, a regular member of our mosque, a really, really great father," the neighbor, who was not identified, said of Syed Afzaal.
“He loved to walk with his family. Almost every evening, they walked.”