Fatti: Fatti: A. A seguito di un controllo del conteggio salari eseguito il 3 aprile 2003, la Cassa di compensazione del Cantone Ticino ha accertato che negli anni sottoposti a verifica (1999-2002) la D._ SA aveva corrisposto a B._ retribuzioni per complessivi fr. 155'077.- (fr. 146'987.- per salario e fr. 8'090.- per spese non ammesse), sulle quali non erano stati prelevati i contributi AVS/AI/IPG/AD e AF. Ritenendo queste retribuzioni provento da attività lucrativa dipendente, la Cassa, con decisione di tassazione d'ufficio 3 luglio 2003, ha fissato l'importo a carico di D._ SA in fr. 24'321.25 e con ulteriore decisione, di stessa data, ha preteso da B._ l'importo di fr. 10'157.55. L'8 agosto 2003 la Cassa ha confermato i propri provvedimenti e rigettato le opposizioni formulate dagli interessati. L'8 agosto 2003 la Cassa ha confermato i propri provvedimenti e rigettato le opposizioni formulate dagli interessati. B. Contro le decisioni su opposizione D._ SA, patrocinata dall'avv. Rossano Guggiari, Agno, e B._, rappresentato dall'avv. Stefano Zanetti, Bellinzona, si sono aggravati al Tribunale cantonale delle assicurazione. In sostanza entrambi gli insorgenti asseveravano che B._ non era mai stato alle dipendenze della società, ma che la ditta C._ & Co. (società in nome collettivo) aveva eseguito prestazioni per la D._ SA così come aveva fatto per almeno altri cinquanta clienti. Con giudizio 8 novembre 2004, l'autorità di ricorso cantonale, dopo aver congiunto i gravami di D._ SA e B._, li ha respinti. I primi giudici hanno ritenuto che le retribuzioni versate a B._ fossero da considerare come salario determinante proveniente da un'attività dipendente, perché l'interessato percepiva regolarmente alla fine di ogni mese una paga, era inserito nell'organigramma della società e, infine, perché aveva svolto l'apprendistato formativo presso la medesima società. Con giudizio 8 novembre 2004, l'autorità di ricorso cantonale, dopo aver congiunto i gravami di D._ SA e B._, li ha respinti. I primi giudici hanno ritenuto che le retribuzioni versate a B._ fossero da considerare come salario determinante proveniente da un'attività dipendente, perché l'interessato percepiva regolarmente alla fine di ogni mese una paga, era inserito nell'organigramma della società e, infine, perché aveva svolto l'apprendistato formativo presso la medesima società. C. B._, sempre assistito dall'avv. Zanetti, interpone ricorso di diritto amministrativo al Tribunale federale delle assicurazioni, chiedendo l'annullamento del giudizio querelato. La Cassa postula la reiezione del gravame, D._ SA ne propone invece l'accoglimento, mentre l'Ufficio federale delle assicurazioni sociali ha rinunciato a determinarsi. Contro la pronuncia cantonale si è pure aggravata, con il patrocinio dell'avv. Guggiari, D._ SA, la quale, al pari dell'altro insorgente, postula l'annullamento del giudizio di prime cure. Mentre la Cassa postula la reiezione del gravame, B._ e l'Ufficio federale delle assicurazioni sociali si sono astenuti da una presa di posizione. Dei motivi invocati dalle parti si dirà, per quanto occorra, nei considerandi. Contestualmente ad entrambi i gravami le parti interessate hanno allegato per la prima volta - ritenendo l'istruttoria condotta dai primi giudici carente - le dichiarazioni datate 30 novembre 2004 di G._, contabile della D._ SA, e di V._ (moglie di B._ e socia, con il marito, della ditta C._ & Co.), a sostegno della tesi difensiva.