Город расположен в 210 километрах к юго-западу от Будапешта и в 40 километрах от южной оконечности озера Балатон. В 15 километрах от города проходит граница с Хорватией. Через город протекает небольшая речка Канижа, приток Залы (бассейн Балатона). Надьканижа стоит на автомобильной и железнодорожной магистрали Будапешт — Загреб, причём в Надьканиже они расходятся — автомобильное шоссе идёт на столицу Хорватии через Чаковец и Вараждин, а железная дорога через Копривницу и Крижевцы. Другие автомобильные дороги ведут из Надьканижи в Капошвар и Залаэгерсег. Время пути на поезде до Будапешта — 4 часа.
В 30 километрах к северо-востоку от города расположен международный аэропорт Балатон-Шармеллек.
Название «Канижа» славянского происхождения, означает «княжеский». Впервые это имя упомянуто в документах в 1245 году. В XIII веке здесь был построен укреплённый замок.
В 1571 году город оккупирован турками. В 1601 году австрийская армия предприняла попытку отвоевать город, однако полуторамесячная осада не привела к успеху, турки отбили все атаки. Освобождён город был вместе с остальной Венгрией в конце XVII века. Обезлюдевшую территорию заселяли колонисты из Германии, Сербии и Хорватии, что привело к мультиэтническому составу населения города.
После поражения турок Надьканижа потеряла своё военное значение, однако быстро начала развиваться, как транспортный узел на пересечении торговых маршрутов, соединяющих Адриатическое побережье с Будапештом и Веной.
В 1765 году в городе открыта школа пиаров. В 1860 году через город прошла железная дорога, связавшая крупнейший адриатический порт Риеку с Будапештом и Веной, что способствовало дальнейшему развитию города.
В конце XIX века также быстро развивается промышленность — пивоварение, переработка молока, другие направления пищевой промышленности; а также производство изделий из стекла и банковское дело. В 1895 году открыта экономическая школа.