Five homes on Spadina Road in Brampton were caught in the blaze.
"Loud. It was just really loud. I felt it like shake — the house. I went out [of] my bedroom and the firefighters were already upstairs saying, 'You need to get out,'" said Lubelia Machado, who lives in one of the homes.
A spokeswoman for the city said the fire spread from the roof into the wires within the walls of the first home, which made it spread faster. The fire caused an estimated $1.2 million in damages.
It took about 50 firefighters four hours to put out the flames, but three of the homes were completely gutted, and the other two are also mostly destroyed.
Eighteen people have been forced out of their homes.
City officials said all five families have insurance, and they all have a place to stay.
Flooding, fires elsewhere in southern Ontario
Elsewhere, lightning also caused damage in the community of Georgina, near Lake Simcoe. The Egypt Hall community centre burned so badly it caved in on itself.
And, in Vaughan, a house was also struck by lightning and the roof set on fire.
The residents got out safely and no injuries were reported.
The extensive damage is due to a higher-than-normal percentage of positive lightning strikes during the storm, said a warning preparedness meteorologist with Environment Canada.
Positive strikes are stronger and carry more of a charge, and so they're more likely to cause damage on the ground, said Geoff Coulson. There were 748 lightning flashes last night within 50 km of the CN Tower in downtown Toronto, and about 14 per cent of those were positive, he said.
Normally, just five per cent of lightning strikes are positive.
Because of that, Coulson said such damage as was seen in Brampton is rare.
"But every year we've seen it," he said. "Some of these storms can occur anywhere in the province."
Flooding from the heavy rainfall was also reported throughout the GTA.
At Bowes Road in Vaughan, the road was flooded out and several vehicles became stuck in deep water.
Vaughan firefighters rescued the occupants from the cars.
GO Transit cancelled early-morning train service along its Richmond Hill line on Thursday morning because of flooding.
GO was able to restore service by about 7 a.m.