Fatti: A. A.a B._ è stato alle dipendenze della A._SA quale perito di automobili e natanti dal 1° giugno 2001 al 31 ottobre 2003. Dal 1° novembre 2003 al 20 dicembre 2003 ha avuto lo statuto di mandatario indipendente della sua ex datrice di lavoro. A.b Con petizione 8 novembre 2004 B._ ha convenuto in giudizio innanzi al Pretore della giurisdizione di Locarno-Campagna la A._SA, chiedendo che quest'ultima sia obbligata a versargli fr. 106'997.60, ridotti in sede di conclusioni a fr. 95'743.35. Il Pretore ha accolto la petizione con pronuncia 11 marzo 2010 limitatamente a fr. 43'377.55 (di cui fr. 21'221.75 a titolo di indennità per vacanze). B. La II Camera civile del Tribunale di appello del Cantone Ticino ha respinto, con sentenza 7 maggio 2012, l'appello della convenuta. La Corte cantonale ha ritenuto che in concreto non è stato concluso un valido accordo in virtù del quale il salario corrisposto avrebbe compensato le vacanze e che non è nemmeno possibile rimproverare all'attore un abuso di diritto per essersi unicamente prevalso nella presente causa delle carenze di un eventuale accordo concernente la retribuzione delle vacanze. C. Con atto dell'8 giugno 2012, che racchiude un ricorso in materia civile e - in via subordinata - un ricorso sussidiario in materia costituzionale, la A._SA postula, previo conferimento dell'effetto sospensivo al gravame, la reiezione della petizione con riferimento al predetto importo riconosciuto quale indennità per vacanze e la conseguente modifica degli oneri processuali e delle ripetibili fissati nella sede cantonale. Lamenta un accertamento incompleto dei fatti, perché la Corte cantonale non ha stabilito che le parti avevano convenuto che la rimunerazione del lavoratore includeva un'indennità per le vacanze, e ritiene che l'attore sia incorso in abuso di diritto facendo valere solo dopo la fine del rapporto di lavoro la nullità dell'asserito accordo, impedendole così di tutelare i suoi interessi. La Presidente della Corte adita ha conferito effetto sospensivo al ricorso con decreto 3 luglio 2012. Con riposta 12 luglio 2012 B._ propone la reiezione del ricorso.