By the late afternoon of the 20th, a weak area of surface low pressure set up near Devils Lake, with the warm front extending out to the east-southeast. Temperatures had risen into the mid 70s to low 80s in the warm sector, with dew points in the upper 60s to lower 70s. To the southwest of the low, a cold front extended back toward Bismarck. Just before 5 pm CDT, a fairly solid line of thunderstorms developed along the cold front, while a smaller cluster formed around Cavalier. By around 6 pm CDT, another cluster of storms developed west of Fargo. Most of this thunderstorm activity had shifted north of the highway 200 corridor by 10 pm, although the most intense rainfall occurred along the southern edge of this area. The New Rockford to Grand Forks/East Grand Forks to Roseau areas picked up 2 to 5 inches of rain in a short duration, prompting flash flood warnings in those areas. Off and on steady rainfall continued into Saturday morning the 21st, before the rain started to end from southwest to northeast. Many of the flash flood warnings were transitioned to areal flood warnings, as the heavy rain ran off into the local drainage and river systems.

Hail in CASS, NORTH DAKOTA
From 20-SEP-19 17:40:00 to 20-SEP-19 17:40:00 (CST-6)
Location: KINDRED
Magnitude: 1.75 
Reported by: Social Media

Thunderstorm Wind in STEELE, NORTH DAKOTA
From 20-SEP-19 17:56:00 to 20-SEP-19 17:56:00 (CST-6)
Location: BLABON
Magnitude: 70.00 EG
Reported by: Law Enforcement

Six large trees were uprooted.

Hail in CAVALIER, NORTH DAKOTA
From 20-SEP-19 18:02:00 to 20-SEP-19 18:02:00 (CST-6)
Location: WALES
Magnitude: 1.00 
Reported by: Emergency Manager

The hail was accompanied by 1.10 inches of rain.

Funnel Cloud in CASS, NORTH DAKOTA
From 20-SEP-19 18:12:00 to 20-SEP-19 18:12:00 (CST-6)
Location: DURBIN
Property damage: 0.00K
Crop damage: 0.00K
Reported by: Public

The funnel cloud was south of Interstate 94.

Hail in CASS, NORTH DAKOTA
From 20-SEP-19 18:15:00 to 20-SEP-19 18:15:00 (CST-6)
Location: CASSELTON
Magnitude: 1.00 
Reported by: Trained Spotter

Hail in CASS, NORTH DAKOTA
From 20-SEP-19 18:50:00 to 20-SEP-19 18:50:00 (CST-6)
Location: ARGUSVILLE
Magnitude: 1.75 
Reported by: Trained Spotter

Quarter to golf ball sized hail fell with very strong winds.

Thunderstorm Wind in GRAND FORKS, NORTH DAKOTA
From 20-SEP-19 18:56:00 to 20-SEP-19 18:56:00 (CST-6)
Location: (RDR)GRAND FORKS AFB
Magnitude: 55.00 MG
Reported by: ASOS

The wind gust was measured at the Grand Forks Air Force Base.

Hail in CASS, NORTH DAKOTA
From 20-SEP-19 19:10:00 to 20-SEP-19 19:10:00 (CST-6)
Location: HUNTER
Magnitude: 1.25 
Reported by: Social Media

Flash Flood in TRAILL, NORTH DAKOTA
From 21-SEP-19 04:00:00 to 21-SEP-19 06:00:00 (CST-6)
Location: HILLSBORO
Flood cause: Heavy Rain
Property damage: 250.00K
Crop damage: 10.00M
Reported by: County Official

Streets, low spots, rivers, and basements were flooded by 4 to 9 inches of rain over a short duration of time. Cars that got stuck in the flood waters were abandoned where they stalled. Farm fields and access roads were also flooded.

Flash Flood in NELSON, NORTH DAKOTA
From 21-SEP-19 04:00:00 to 21-SEP-19 06:00:00 (CST-6)
Location: MC VILLE
Flood cause: Heavy Rain
Property damage: 125.00K
Crop damage: 5.00M
Reported by: Public

Streets, low spots, rivers, and basements were flooded by 4 to 9 inches of rain over a short duration of time. Cars that got stuck in the flood waters were abandoned where they stalled. Farm fields and access roads were also flooded.

Hail in PEMBINA, NORTH DAKOTA
From 20-SEP-19 16:02:00 to 20-SEP-19 16:02:00 (CST-6)
Location: CRYSTAL
Magnitude: 1.00 
Reported by: Social Media

Hail in BENSON, NORTH DAKOTA
From 20-SEP-19 16:17:00 to 20-SEP-19 16:17:00 (CST-6)
Location: MADDOCK MUNI ARPT
Magnitude: 1.00 
Reported by: Mesonet

Video from a NDAWN mesonet site showed hail the size of quarters.

Hail in WALSH, NORTH DAKOTA
From 20-SEP-19 16:17:00 to 20-SEP-19 16:17:00 (CST-6)
Location: EDINBURG
Magnitude: 1.00 
Reported by: Public

Hail in PEMBINA, NORTH DAKOTA
From 20-SEP-19 16:37:00 to 20-SEP-19 16:37:00 (CST-6)
Location: HENSEL
Magnitude: 1.50 
Reported by: Public

Hail in RAMSEY, NORTH DAKOTA
From 20-SEP-19 16:55:00 to 20-SEP-19 16:55:00 (CST-6)
Location: ST JOE
Magnitude: 1.00 
Reported by: Public

Hail in PEMBINA, NORTH DAKOTA
From 20-SEP-19 16:57:00 to 20-SEP-19 16:57:00 (CST-6)
Location: CAVALIER
Magnitude: 0.75 
Reported by: Trained Spotter

The hail was accompanied by very heavy rain.

Tornado in TOWNER, NORTH DAKOTA
From 20-SEP-19 17:00:00 to 20-SEP-19 17:00:00 (CST-6)
Location: BISBEE
Tornado F-scale: EF0
Reported by: Emergency Manager

A brief touchdown was noted in an open field east of Bisbee.

Hail in TOWNER, NORTH DAKOTA
From 20-SEP-19 17:10:00 to 20-SEP-19 17:10:00 (CST-6)
Location: BISBEE LYSTER ARPT
Magnitude: 1.25 
Reported by: Trained Spotter

Thunderstorm Wind in GRAND FORKS, NORTH DAKOTA
From 20-SEP-19 18:50:00 to 20-SEP-19 18:50:00 (CST-6)
Location: POWELL
Magnitude: 53.00 MG
Reported by: ASOS

The wind gust was measured at the Grand Forks Airport.

Flash Flood in BENSON, NORTH DAKOTA
From 20-SEP-19 17:45:00 to 20-SEP-19 21:00:00 (CST-6)
Location: MADDOCK
Flood cause: Heavy Rain
Property damage: 250.00K
Crop damage: 10.00M
Reported by: Fire Department/Rescue

Over 2 inches of rain fell in less than an hour, flooding streets and intersections.

Flash Flood in GRAND FORKS, NORTH DAKOTA
From 20-SEP-19 22:58:00 to 21-SEP-19 06:00:00 (CST-6)
Location: (GFK)GRAND FORKS INT
Flood cause: Heavy Rain
Property damage: 250.00K
Crop damage: 10.00M
Reported by: Law Enforcement

Streets, low spots, rivers, basements, and underpasses were flooded by 4 to 9 inches of rain over a short duration of time. Numerous cars that got stuck in the flood waters were abandoned where they stalled. Interstate 29 was closed on the north end of Grand Forks due to high water levels, with traffic diverted around the closed segment. Farm fields and access roads were also flooded.

Flash Flood in PEMBINA, NORTH DAKOTA
From 20-SEP-19 18:22:00 to 20-SEP-19 21:00:00 (CST-6)
Location: CAVALIER
Flood cause: Heavy Rain
Property damage: 250.00K
Crop damage: 10.00M
Reported by: Trained Spotter

Streets, low spots, rivers, and basements were flooded by 4 to 9 inches of rain over a short duration of time. Cars that got stuck in the flood waters were abandoned where they stalled. Farm fields and access roads were also flooded.

Flash Flood in RAMSEY, NORTH DAKOTA
From 20-SEP-19 19:45:00 to 20-SEP-19 21:00:00 (CST-6)
Location: CHURCHS FERRY
Flood cause: Heavy Rain
Property damage: 250.00K
Crop damage: 10.00M
Reported by: Trained Spotter

Fields and farm access roads were flooded across eastern Coulee and western Dry Lake townships.

Flash Flood in STEELE, NORTH DAKOTA
From 20-SEP-19 23:33:00 to 21-SEP-19 06:00:00 (CST-6)
Location: LUVERNE
Flood cause: Heavy Rain
Property damage: 250.00K
Crop damage: 10.00M
Reported by: Public

Streets, low spots, rivers, and basements were flooded by 4 to 9 inches of rain over a short duration of time. Cars that got stuck in the flood waters were abandoned where they stalled. Farm fields and access roads were also flooded.

Flash Flood in NELSON, NORTH DAKOTA
From 20-SEP-19 21:50:00 to 21-SEP-19 06:00:00 (CST-6)
Location: ANETA
Flood cause: Heavy Rain
Property damage: 125.00K
Crop damage: 5.00M
Reported by: Public

Streets, low spots, rivers, and basements were flooded by 4 to 9 inches of rain over a short duration of time. Cars that got stuck in the flood waters were abandoned where they stalled. Farm fields and access roads were also flooded.