Fatti: A. A.a. Il 20 agosto 2007 B._ ha stipulato con la A._ SA, per sé stesso e per sua moglie, un'assicurazione d'indennità giornaliera ospedaliera in caso di ricovero in ospedale con inizio dal 1° settembre 2007 e retta dalla LCA. L'indennità convenuta ammonta a fr. 250.-- al giorno. A.b. B._ ha invano esatto dall'assicuratore la corresponsione delle indennità giornaliere per i ricoveri in ospedale dal 5 maggio al 25 giugno 2013 e dal 10 aprile all'8 maggio 2014. B. Con petizione 27 aprile 2015 B._ ha chiesto al Tribunale delle assicurazioni del Cantone Ticino di condannare la A._ SA al versamento di complessivi fr. 20'250.-- per le due predette degenze ospedaliere. Con risposta 22 giugno 2015 la convenuta ha eccepito la competenza del tribunale adito, ha asserito che in ogni caso la petizione andava respinta e ha postulato in via riconvenzionale la condanna dell'assicurato a restituirle fr. 71'500.-- per le indennità giornaliere pagate per precedenti ospedalizzazioni. Con sentenza 16 novembre 2015 il Tribunale cantonale delle assicurazioni ha, in parziale accoglimento della petizione, condannato la A._ SA a versare all'attore fr. 19'250.--, mentre ha integralmente respinto l'azione riconvenzionale. La Corte cantonale ha stabilito la sua competenza indicando di essere stata adita nell'ambito di un litigio concernente un'assicurazione complementare all'assicurazione sociale contro le malattie. Ha poi ritenuto che l'assicurato avesse notificato alla convenuta entro il termine di 30 giorni previsto dalle CGA la degenza del maggio 2014, mentre il mancato rispetto di tale termine per la notifica della degenza del 2013 era intervenuto senza colpa dell'attore e non ha causato alcun nocumento alla convenuta. Ha infine negato che il contratto fosse parzialmente nullo in seguito al divieto dell'assicurazione retroattiva, perché il rischio assicurato era la degenza ospedaliera e nella fattispecie non vi sono stati ricoveri ospedalieri per patologie psichiche prima della stipula del contratto. C. Con ricorso in materia civile dell'8 gennaio 2016 la A._ SA chiede, previo conferimento dell'effetto sospensivo al gravame, di dichiarare in via preliminare nulla la sentenza cantonale per assenza di competenza per materia. Essa postula poi, in via principale, la riforma della sentenza cantonale nel senso che venga negato all'attore un diritto a prestazioni assicurative e, in via subordinata, l'annullamento del giudizio impugnato con il rinvio della causa all'autorità inferiore per nuova decisione. Afferma che il litigio non rientra nella competenza del Tribunale cantonale delle assicurazioni, ma della Pretura. Lamenta poi che l'autorità inferiore avrebbe compiuto un accertamento dei fatti manifestamente arbitrario riguardo all'incapacità dell'assicurato di tempestivamente segnalare la degenza ospedaliera del 2013. Sostiene inoltre che vi sarebbe un motivo di nullità parziale giusta l'art. 9 LCA, perché B._ era già affetto da una problematica d'origine psichica fin dal 1996. Ritiene infine che l'autorità cantonale abbia riconosciuto ripetibili a un rappresentante non autorizzato ad agire nella procedura in questione. Con risposta 5 febbraio 2016 B._ propone la reiezione del ricorso. La Presidente della Corte adita ha conferito effetto sospensivo al ricorso con decreto 9 febbraio 2016.