According to Health Ministry, a total of 4,811 cases were reported in the country this year till June five with Delhi topping the list with 1,506 cases.
Gujarat follows Delhi with 1,027 cases reported during the period followed by Punjab with 845.
Though Delhi registered the highest number of cases, the deaths were 16. Gujarat topped in this category with 194 deaths due to swine flu.
A total of 597 people have died due to the deadly disease, a senior Health Ministry official said.
Rajasthan recorded the highest number of deaths after Gujarat with 162 followed by 83 deaths in Maharashtra.
The others states which recorded substantial number of cases included Rajasthan with 845, Haryana 448, Punjab 183 and Madhya Pradesh 103.
States like Arunachal Pradesh, Assam, Bihar, Chhattisgarh, Himachal Pradesh, Meghalaya, Manipur, Mizoram, Nagaland, Orissa and Tripura recorded zero cases.
For the one week ending June five, Kerala reported the highest number of eight cases and one death while Delhi recorded two cases and no deaths.
Asked why Delhi has the highest number of cases, the official said, "this is due to high rate of urbanisation here. There is more contact with people".