Your first step is, as you've already deduced, Generate Near Table. It is important to unselect
closest only or specify
closest="ALL" if using a script. Your in features will be your distrcits, to features will be the storm paths. This will give you a table with too much information and needs to be refined and summarized.
IMPORTANT Before running Generate Near Table you must have both datasets projected to a 'good' coordinate system, if it will fit in a UTM zone then use UTM (not sure where you are and how big the data is) otherwise Lamberts Conic or Equal Area projection would perhaps be more suitable.. either way distances must be in metres and the projection should be measureable (unlike Mercator or Geogaphic). Also, less importantly, it would be best if you do this with Geodatabase features and not shapefiles so the FID/OBJECTID values are static (they change in shapefiles, which can lead to errors later).
From the table select the rows for each of the distance units, for this example I will use 25km. If you're scripting you can specify this in the Where Clause of Make Table View, otherwise select by attributes, ensuring only the records where
NEAR_DIST < 25000 then using Summary Statistics you can compile that into a table with counts. For the statistics field select NEAR_FID with a statistics type of COUNT and a CASE field of the IN_FID, this will give you a table that has the FID of each from feature and the count of lines...
Now, attribute join the summary table to your source features (districts) and field calculate the COUNT_NEAR_FID into your (presumably existing) 'storms within 25km field'. Remove the join and repeat with appropriate distance units from select by attributes/make table view - you do not need to regenrate the near table.