Fatti:
A.
Il 26 ottobre 2018 la Corte delle assise criminali ha dichiarato A._ colpevole di tentato assassinio, infrazione alla legge federale del 20 giugno 1997 sulle armi (LArm, RS 514.54) e tentato inganno aggravato nei confronti delle autorità (art. 118 cpv. 3 lett. a LStr [dal 1° gennaio 2019: LStrI]), condannandolo a una pena detentiva di 9 anni e a una pena pecuniaria di 30 aliquote giornaliere di fr. 10.-- ciascuna. Inoltre, la Corte delle assise criminali ha ordinato l'espulsione dal territorio svizzero per un periodo di 10 anni e condannato A._ a versare a B._ fr. 36'145.20 a titolo di risarcimento danni e fr. 2'000.-- a titolo di indennità per torto morale. Avverso tale sentenza A._ e B._ hanno interposto appello. Il Procuratore pubblico ha presentato un appello incidentale.
B.
Il 26 giugno 2019 la Corte di appello e revisione penale, confermando il giudizio di colpevolezza pronunciato in prima istanza, ha condannato A._ a una pena detentiva di 11 anni e a una pena pecuniaria di 30 aliquote giornaliere di fr. 10.-- ciascuna e ordinato l'espulsione dal territorio svizzero per un periodo di 10 anni. In relazione alle pretese civili, la Corte di appello e revisione penale ha condannato A._ a versare a B._ fr. 10'000.-- a titolo di indennità per torto morale e fr. 410.-- a titolo di risarcimento danni.
C.
A._ insorge al Tribunale federale con un ricorso in materia penale. Egli domanda di essere prosciolto dall'accusa di tentato assassinio e di essere dichiarato autore colpevole unicamente del reato di tentato inganno nei confronti dell'autorità, senza aggravante. In via subordinata, A._ domanda il rinvio della causa alla Corte di appello e revisione penale per nuovo giudizio. Egli chiede inoltre di essere posto al beneficio dell'assistenza giudiziaria per la procedura dinnanzi al Tribunale federale.

Diritto:
1.
Dinnanzi al Tribunale federale il ricorrente può censurare l'accertamento dei fatti soltanto se è stato svolto in modo manifestamente inesatto, ovvero arbitrario, oppure in violazione del diritto ai sensi dell'<ref-law> e l'eliminazione del vizio può essere determinante per l'esito del procedimento (<ref-law>). L'accertamento dei fatti è arbitrario se è manifestamente insostenibile, si trova in chiaro contrasto con la fattispecie, si fonda su una svista manifesta o contraddice in modo urtante il sentimento della giustizia e dell'equità (<ref-ruling> consid. 2.3.1). Nella procedura dinnanzi al Tribunale federale, il principio in dubio pro reo non assume una portata che travalica quella del divieto d'arbitrio (<ref-ruling> consid. 1.1). Una censura d'arbitrio deve essere motivata in modo chiaro e preciso, conformemente alle esigenze poste dall'<ref-law>. Le critiche di natura appellatoria sono inammissibili (<ref-ruling> consid. 2.4).
2.
2.1. Il ricorrente si duole di un accertamento arbitrario dei fatti e di una violazione del principio in dubio pro reo in relazione all'accusa di tentato assassinio. Egli sostiene, in sintesi, di non avere avuto l'intenzione di uccidere B._, ma solo di spaventarlo. In particolare, egli non avrebbe mirato a B._ ma - a eccezione del primo colpo, che sarebbe partito accidentalmente - sparato in aria. Inoltre, il movente individuato dall'autorità cantonale non sussisterebbe (ricorso, pagg. 10 - 51).
Le censure sollevate dal ricorrente sono inammissibili, poiché di natura appellatoria. Ciò è segnatamente il caso laddove egli contesta la credibilità di B._ circa lo svolgimento dei fatti, omettendo tuttavia di confrontarsi con la motivazione della sentenza impugnata, secondo la quale egli, dopo avere riferito di avere sparato il secondo e il terzo colpo in aria, avrebbe mostrato nella ricostruzione fotografica un'angolazione dell'arma solo di poco superiore alla perpendicolare del corpo (sentenza, pag. 34).
2.2. Nulla muta alla natura appellatoria delle censure del ricorrente il fatto che egli invochi a più riprese una violazione del diritto di essere sentito, senza tuttavia fornire una motivazione specifica al riguardo. Laddove il ricorrente sostiene che l'autorità cantonale non si sarebbe confrontata con gli argomenti della difesa relativi al fatto che B._ avrebbe dichiarato di avere sentito un quarto colpo mentre già fuggiva, la censura è infondata. Già la Corte delle assise criminali ha infatti ritenuto che il ricorrente possa avere sparato, dopo due colpi a vuoto, un quarto colpo (cfr. sentenza di prima istanza, pag. 131 e seg.). La circostanza che B._ abbia dichiarato di avere visto il ricorrente sparare un quarto colpo non era quindi idonea a metterne in dubbio la credibilità e non necessitava di ulteriore disamina.
3.
Il ricorrente censura una violazione del diritto di essere sentito e un accertamento arbitrario dei fatti in relazione al reato di cui all'art. 118 LStr. A suo dire, l'autorità cantonale non si sarebbe confrontata con gli argomenti addotti dalla difesa durante il dibattimento. Egli sostiene di avere percepito l'importo di fr. 6'500.-- a copertura delle spese da lui sostenute per la realizzazione del finto matrimonio tra B._ e C._. Di conseguenza, egli non avrebbe agito a scopo di indebito profitto (ricorso, pag. 51 e seg.).
Il ricorrente non spiega, nel suo memoriale, con quali argomenti l'autorità inferiore avrebbe omesso di confrontarsi né quali sarebbero le spese da lui concretamente sostenute. Carente di motivazione, la censura è inammissibile (<ref-law>; <ref-ruling> consid. 2).
4.
Il ricorrente contesta l'espulsione dal territorio svizzero e postula un'indennità per ingiusta incarcerazione e ripetibili (ricorso, pag. 52 seg.). Tali domande sono formulate come corollario del postulato proscioglimento; visto l'esito del ricorso, si può prescindere da un loro esame.
5.
Per quanto ammissibile, il ricorso deve essere respinto. Le spese giudiziarie seguono la soccombenza (<ref-law>). La domanda di assistenza giudiziaria deve essere respinta, essendo il gravame sin dall'inizio privo di possibilità di successo (<ref-law>). Vista la situazione finanziaria del ricorrente, si giustifica tuttavia di prelevare una tassa di giudizio ridotta (<ref-law>).

Per questi motivi, il Tribunale federale pronuncia:
1.
Nella misura in cui è ammissibile, il ricorso è respinto.
2.
La domanda di assistenza giudiziaria è respinta.
3.
Le spese giudiziarie di fr. 1'200.-- sono poste a carico del ricorrente.
4.
Comunicazione alle parti e alla Corte di appello e di revisione penale del Cantone Ticino.