Fatti:
A.
Con sentenza del 23 luglio 2019, la Corte delle assise criminali del Cantone Ticino ha dichiarato A._ autore colpevole di coazione sessuale, in parte tentata, nei confronti di B._. Gli ha rimproverato di avere, il 27 marzo 2015, a X._, presso l'hotel C._, usando violenza tale da renderla inetta a resistere, segnatamente ponendosi con il proprio corpo sopra quello di B._, tentato di costringerla a subire atti analoghi alla congiunzione carnale, quali una tentata fellatio e un cunnilingus. Gli è inoltre stato addebitato di avere commesso, dopo una tentata congiunzione carnale, un atto di automasturbazione con eiaculazione sul ventre della vittima. L'imputato è inoltre stato riconosciuto autore colpevole di tentata violenza carnale, per avere, nelle stesse circostanze di tempo e di luogo, tentato di costringere B._ a subire la congiunzione carnale, usando su di lei violenza nelle medesime modalità esposte.
La Corte delle assise criminali ha condannato l'imputato alla pena detentiva di tre anni, da dedursi il carcere preventivo sofferto, sospesa condizionalmente in ragione di 26 mesi con un periodo di prova di due anni, per il resto da espiare. Lo ha inoltre condannato a versare all'accusatrice privata un'indennità di fr. 10'000.-- a titolo di riparazione morale.
B.
Con sentenza del 28 maggio 2020, la Corte di appello e di revisione penale (CARP) ha respinto sia l'appello presentato da A._ sia l'appello incidentale del Procuratore pubblico contro la sentenza di primo grado. La Corte cantonale ha confermato il giudizio della prima istanza.
C.
A._ impugna questa sentenza con un ricorso in materia penale dell'8 luglio 2020 al Tribunale federale, chiedendo di annullarla e di riformare il giudizio della Corte delle assise criminali nel senso di essere riconosciuto autore colpevole unicamente di coazione sessuale in relazione all'atto di automasturbazione con eiaculazione sul ventre di B._ e di essere condannato ad una pena detentiva di 12 mesi, interamente sospesa condizionalmente per un periodo di prova di due anni. Postula altresì, in particolare, la riduzione a fr. 1'000.-- del risarcimento del torto morale all'accusatrice privata. Il ricorrente chiede inoltre di essere ammesso al beneficio dell'assistenza giudiziaria e del gratuito patrocinio.
D.
Invitati ad esprimersi, la Corte cantonale non ha presentato una risposta, mentre il Procuratore pubblico ha comunicato di non avere particolari osservazioni da formulare, postulando la reiezione del ricorso. Pure l'opponente ha comunicato di non avere osservazioni da presentare e di condividere il giudizio impugnato, chiedendo altresì di essere ammessa al beneficio del gratuito patrocinio.

Diritto:
1.
Presentato dall'imputato, che ha partecipato alla procedura dinanzi alla precedente istanza, le cui conclusioni sono state disattese (art. 81 cpv. 1 lett. a e b n. 1 LTF), e diretto contro una decisione finale (<ref-law>) resa in materia penale (<ref-law>) da un'autorità di ultima istanza cantonale (<ref-law>), il gravame è tempestivo (<ref-law>) e sotto i citati aspetti ammissibile.
2.
2.1. Conformemente a quanto stabilito dagli art. 95 e 96 LTF, il ricorso in materia penale al Tribunale federale può essere presentato per violazione del diritto. Secondo l'<ref-law>, nel ricorso occorre spiegare per quali ragioni l'atto impugnato viola il diritto. Il ricorrente deve quindi confrontarsi con le considerazioni esposte nella sentenza impugnata, spiegando per quali motivi tale giudizio viola il diritto (<ref-ruling> consid. 1.7.1). Il Tribunale federale esamina in linea di principio solo le censure sollevate; esso non è tenuto a vagliare, come lo farebbe un'autorità di prima istanza, tutte le questioni giuridiche che si pongono, se quest'ultime non sono presentate nella sede federale (<ref-ruling> consid. 2.1). Le esigenze di motivazione sono inoltre accresciute laddove il ricorrente lamenta l'arbitrio nell'accertamento dei fatti e nella valutazione delle prove, dato che ciò equivale a sostenere che i fatti sono stati accertati in violazione dell'<ref-law> e del diritto federale. Trattandosi di garanzie di rango costituzionale, il Tribunale federale esamina le relative censure soltanto se sono motivate in modo chiaro e preciso (<ref-law>; <ref-ruling> consid. 2.1; <ref-ruling> consid. 1.1; <ref-ruling> consid. 2.4). In quest'ottica, argomentazioni vaghe o meramente appellatorie e semplici rinvii agli atti cantonali non sono ammissibili (<ref-ruling> consid. 3.3; <ref-ruling> consid. 2.4). Per motivare l'arbitrio, non basta criticare semplicemente la decisione impugnata contrapponendole una versione propria, ma occorre dimostrare per quale motivo l'accertamento dei fatti o la valutazione delle prove sono manifestamente insostenibili, si trovano in chiaro contrasto con la fattispecie, si fondano su una svista manifesta o contraddicono in modo urtante il sentimento della giustizia e dell'equità (<ref-ruling> consid. 2.3.1; <ref-ruling> consid. 3.1, 8 consid. 2.1).
2.2. Nella misura in cui, criticando l'accertamento dei fatti e la valutazione delle prove da parte della Corte cantonale, il ricorrente si limita ad esporre una sua diversa versione dei fatti, senza sostanziare l'arbitrarietà del giudizio impugnato, il gravame non adempie le esposte esigenze di motivazione e deve di conseguenza essere dichiarato inammissibile. Il ricorso è parimenti inammissibile laddove il ricorrente sostiene in modo generico che la CARP non si sarebbe confrontata con le contestazioni da lui sollevate con l'appello riguardo alla questione del consenso dell'opponente. Egli si limita infatti a rinviare all'allegato di appello, senza puntualmente spiegare quali specifiche censure la precedente istanza avrebbe omesso di esaminare. Disattende inoltre che i giudici cantonali hanno esposto le ragioni per cui la tesi ricorsuale circa un rapporto consensuale tra le parti era "addirittura temeraria". Il ricorrente non fa quindi valere un'insufficiente motivazione del giudizio impugnato, lesiva del suo diritto di essere sentito (cfr., sulla portata della garanzia del diritto di essere sentito, <ref-ruling> consid. 2.2.3; <ref-ruling> consid. 4.3). La stessa conclusione vale laddove il ricorrente adduce genericamente che le autorità inferiori non avrebbero preso in considerazione "diversi elementi" che metterebbero in dubbio la versione dell'opponente. La censura, che si confonde con quella di violazione del divieto dell'arbitrio, non è puntualmente motivata e non sostanzia una violazione del suo diritto di essere sentito.
3.
3.1. Il ricorrente sostiene che la Corte cantonale avrebbe accertato in modo manifestamente inesatto che l'opponente aveva manifestato sin dall'inizio della serata l'intenzione di non volere alcun rapporto con lui. Adduce che, in realtà, l'opponente gli avrebbe permesso un abbraccio e un bacio.
3.2. Dai verbali d'interrogatorio citati dal ricorrente, risulta che l'opponente ha dichiarato: "Mi sembra di ricordare forse un abbraccio l'ho permesso". Non risulta per contro ch'ella abbia acconsentito ad essere baciata. Al riguardo, la CARP ha infatti accertato che, al dibattimento dinanzi al tribunale di primo grado, il ricorrente aveva chiaramente riferito che l'opponente non voleva dargli un bacio. Formulando la censura ricorsuale, egli si scosta quindi, almeno parzialmente, dai fatti accertati e non sostanzia di conseguenza l'arbitrio con una motivazione conforme alle esigenze dell'<ref-law>. Disattende inoltre che la CARP ha accertato, sulla base delle dichiarazioni lineari e costanti dell'opponente, ch'ella ha in ogni caso sempre rifiutato un rapporto di carattere sessuale con lui. Richiamando unicamente l'eventuale consenso ad un abbraccio, il ricorrente non si confronta con l'insieme delle dichiarazioni prese in considerazione dai giudici cantonali e non dimostra quindi l'arbitrarietà di questo accertamento.
4.
4.1. Il ricorrente rimprovera alla Corte cantonale di non avere tenuto conto, nell'ambito della valutazione delle dichiarazioni dell'opponente, del fatto ch'ella si trovava in stato di estrema fragilità, siccome sofferente di depressione. Rileva in particolare che l'opponente era appena stata dimessa da una clinica e doveva ancora assumere dei medicamenti.
4.2. La CARP ha invero accertato che l'opponente era appena stata dimessa dal reparto di psicoterapia di una clinica del Cantone di Zurigo. Sullo svolgimento dei fatti incriminati, la Corte cantonale ha in ogni caso valutato l'insieme delle dichiarazioni dell'opponente ed ha spiegato le ragioni per cui le ha ritenute credibili e coerenti con la situazione e con il suo profilo psicologico. Richiamando semplicemente lo stato di fragilità dell'opponente, il ricorrente non si confronta con le sue dichiarazioni concernenti la dinamica dei fatti oggetto del procedimento penale, ritenute lineari, costanti e coerenti dalla CARP. Egli mette genericamente in dubbio l'attendibilità dell'opponente, ma non accenna minimamente a contraddizioni ed incongruenze manifeste nelle dichiarazioni agli atti. Nuovamente, il ricorrente non sostanzia quindi arbitrio alcuno. Il semplice riferimento allo stato psicologico dell'opponente non è di per sé sufficiente per mettere in discussione la credibilità delle sue dichiarazioni.
5.
5.1. Il ricorso è inoltre inammissibile laddove il ricorrente sostiene che l'opponente avrebbe rilasciato dichiarazioni contraddittorie riguardo alla sua reazione quando si trovava sul divano, siccome inizialmente avrebbe affermato di avere cercato di divincolarsi da lui, modificando in seguito la propria versione nel senso di avergli fatto capire che non voleva alcun rapporto.
5.2. Con tali argomentazioni, il ricorrente non dimostra alcuna contraddizione né un cambiamento di versione nelle dichiarazioni dell'opponente. Disattende che l'opponente era praticamente bloccata sul divano: non era in grado di alzarsi, né riusciva ad opporsi al ricorrente che si trovava sopra di lei e la schiacciava sul petto. Il ricorrente omette di considerare questi accertamenti, non sostanziati d'arbitrio e quindi vincolanti per il Tribunale federale (<ref-law>). Di natura appellatoria, la censura non deve essere vagliata oltre.
6.
6.1. Il ricorrente ritiene manifestamente inesatte le argomentazioni che la CARP ha addotto riguardo ai motivi per cui l'opponente non è fuggita né si è allontanata da lui nonostante ne avesse avuto la possibilità in diverse occasioni. Sostiene che l'unica spiegazione possibile sarebbe il comportamento consenziente dell'opponente, la quale sarebbe rimasta di sua spontanea iniziativa a bere ed a discutere con lui per più di tre ore.
6.2. La Corte cantonale ha ritenuto l'opponente credibile anche perché è stata lei stessa a riconoscere di essere rimasta con il ricorrente nonostante avesse avuto alcune occasioni per fuggire. Al riguardo, la CARP ha considerato che una persona che racconta un abuso in realtà mai avvenuto, non farebbe mai una simile ammissione, che potrebbe essere utilizzata a suo sfavore. Ha inoltre ritenuto la giustificazione dell'opponente relativa al fatto di essere rimasta con il ricorrente, coerente sia con il suo passato tormentato (che la bloccava dal terrore) sia con la situazione concreta (il ricorrente era il gerente dell'albergo e possedeva quindi un'ulteriore chiave che gli avrebbe permesso di entrare nella sua camera). La Corte cantonale ha in sostanza accertato che, in tali circostanze, l'opponente si sentiva in una situazione senza uscita.
6.3. Il ricorrente si limita ad esporre in modo appellatorio la sua diversa opinione, ma non spiega puntualmente, con una motivazione conforme alle esigenze dell'<ref-law>, per quali ragioni la valutazione della CARP, secondo cui l'opponente si sentiva in una situazione senza uscita, sarebbe manifestamente insostenibile e pertanto arbitraria. Disattende inoltre che, secondo gli accertamenti vincolanti dei giudici cantonali (<ref-law>), per tutto il tempo in cui è rimasta con il ricorrente, l'opponente ha sempre espresso chiari e ripetuti rifiuti alle sue insistenti avances. La tesi ricorsuale che deduce semplicemente dalla mancata fuga dell'opponente un consenso ad avere un rapporto sessuale con il ricorrente è di natura appellatoria e non deve essere ulteriormente esaminata.
7.
7.1. Secondo il ricorrente, il racconto dell'opponente relativo alla descrizione dell'abuso non sarebbe lineare, siccome l'interessata avrebbe inizialmente dichiarato che "è un po' tutto confuso", per poi affermare che, nonostante l'alcool assunto, avrebbe capito quanto stava succedendo. Egli rileva che l'opponente non è comunque stata in grado di riferire se vi sia stata una penetrazione vaginale o meno. Accenna inoltre all'assenza di lesioni sul corpo dell'opponente, rilevando altresì ch'ella si sarebbe recata spontaneamente alla ricezione dell'albergo e non sarebbe mai stata obbligata a bere bevande alcoliche. Ribadisce che l'opponente sarebbe rimasta con lui e ch'egli l'avrebbe quindi considerata consenziente, almeno fino al momento in cui ha tentato di penetrarla.
7.2. Nuovamente il ricorrente si limita ad esporre in modo appellatorio la sua versione dei fatti senza confrontarsi specificatamente con i considerandi della sentenza impugnata e senza quindi sostanziarla d'arbitrio con una motivazione conforme alle esigenze dell'<ref-law>. Egli non si confronta puntualmente con le dichiarazioni rilasciate dall'opponente e non evidenzia contraddizioni e incongruenze manifeste. Riconosce per contro che le sue stesse dichiarazioni, al di là della sua affermazione dell'asserito consenso, non sono mai state né lineari né costanti. Disattende altresì che, secondo gli accertamenti della Corte cantonale, per stessa ammissione del ricorrente, l'opponente ha sin dall'inizio rifiutato di avere un rapporto sessuale. Nella misura in cui insiste anche in questa sede nel sostenere che l'opponente sarebbe stata consenziente fino al momento in cui egli ha cercato di penetrarla, il ricorrente si scosta dai fatti accertati in modo univoco e vincolante dalla Corte cantonale, senza sostanziarli di arbitrio alcuno. Insufficientemente motivata, la censura è quindi inammissibile.
7.3. Il ricorrente non fa in seguito valere la violazione degli art. 189 e 190 CP. Non sostiene che i fatti accertati non realizzerebbero gli elementi costitutivi dei reati di coazione sessuale e di tentata violenza carnale.
8.
8.1. Il ricorrente contesta la commisurazione della pena, ritenendola eccessiva e chiedendone una riduzione. Rimprovera alla Corte cantonale di non averla sufficientemente motivata tenendo conto dei criteri dell'<ref-law>. Sostiene in particolare che non sarebbero stati debitamente motivati gli elementi presi in considerazione per stabilire l'entità della sospensione condizionale parziale della pena detentiva.
8.2. I principi della commisurazione della pena sono disciplinati dagli art. 47 segg. CP (cfr. <ref-ruling> consid. 1.2; <ref-ruling> consid. 6.1.1 e rispettivi rinvii). Giusta l'<ref-law>, se la sentenza dev'essere motivata, il giudice vi espone anche le circostanze rilevanti per la commisurazione della pena e la loro ponderazione. La motivazione deve giustificare la pena pronunciata e permettere di seguire il ragionamento che ne è alla base (<ref-ruling> consid. 1.2 e rinvii). Se entra nel merito di un appello, il Tribunale d'appello pronuncia una nuova sentenza che si sostituisce a quella di primo grado (<ref-law>; <ref-ruling> consid. 6.1). Alla luce del carattere riformatorio del rimedio giuridico dell'appello, la Corte cantonale deve stabilire una pena propria e motivarla in modo comprensibile. Non può limitarsi a verificare i considerandi relativi alla commisurazione della pena nella sentenza della prima istanza sulla base delle censure sollevate dal ricorrente (<ref-ruling> consid. 1.3.3). Secondo l'<ref-law>, la motivazione della sentenza comprende esplicitamente le sanzioni. A ciò nulla muta il fatto che, nella procedura di ricorso, il giudice possa rimandare alla motivazione dell'istanza inferiore (<ref-ruling> consid. 1.3.3; sentenze 6B_848/2020 del 3 dicembre 2020 consid. 2.2; 6B_502/2019 del 27 febbraio 2020 consid. 3.4).
8.3. In concreto, la Corte cantonale non ha svolto una propria valutazione sulla commisurazione della pena, ma si è limitata a rinviare in modo globale alla pena inflitta dal tribunale di primo grado. Conformemente alla giurisprudenza esposta, le sarebbe per contro spettato eseguire un suo esame della sanzione, confrontandosi con i principi applicabili in questa materia ed esponendo i motivi per cui si giustificava di pronunciare una determinata pena. Rinviando semplicemente alla pena inflitta dal primo giudice, senza addurre una sua motivazione, la CARP ha violato il diritto federale. Su questo aspetto, il ricorso è quindi fondato.
9.
9.1. Nelle conclusioni, il ricorrente chiede inoltre la riduzione a fr. 1'000.-- dell'indennità per il torto morale all'opponente. La domanda deve essere respinta, siccome tale aspetto non è stato oggetto di una censura motivata nel ricorso.
9.2. Parimenti non devono essere vagliate le ulteriori conclusioni formulate dal ricorrente, peraltro corrispondenti a dispositivi della sentenza di primo grado ch'erano parzialmente incontestati dinanzi all'ultima istanza cantonale. I punti elencati dal ricorrente (confisca degli oggetti appartenenti all'opponente, oneri processuali e spese per il procedimento di primo grado, spese per la difesa d'ufficio e per il gratuito patrocinio dell'accusatrice privata) non sono stati oggetto d'impugnazione e il ricorso non contiene una specifica motivazione al riguardo. Deve nondimeno essere rilevato che, riguardo alla confisca ordinata dalla Corte di primo grado degli oggetti appartenenti all'accusatrice privata indicati nell'atto di accusa in quanto mezzi di prova, il dispositivo della CARP non si pronuncia. Se del caso, spetterà pertanto alla Corte cantonale completarlo (cfr. <ref-law>).
10.
10.1. Ne segue che, in quanto ammissibile, il ricorso deve essere parzialmente accolto. Il dispositivo n. 2 (comprensivo dei punti n. 2.1 e 2.1.1), relativo alla pena, e il dispositivo n. 5, concernente gli oneri processuali d'appello, devono essere annullati. Per il resto, il gravame deve essere respinto nella misura della sua ammissibilità. Gli atti devono quindi essere rinviati alla Corte cantonale affinché si ripronunci sulla commisurazione della pena e, conseguentemente, sull'eventuale nuova ripartizione delle spese giudiziarie di appello.
10.2. Non si prelevano spese giudiziarie a carico dello Stato del Cantone Ticino (<ref-law>), che è tuttavia tenuto a versare al ricorrente, parzialmente vincente, un'indennità ridotta a titolo di ripetibili della sede federale (art. 68 cpv. 1 e 2 LTF). L'indennità deve essere versata al patrocinatore, di modo che, in questa misura, la domanda di gratuito patrocinio diviene senza oggetto. Nella misura in cui il ricorrente è invece soccombente, la sua domanda di assistenza giudiziaria con gratuito patrocinio può essere accolta in considerazione della sua situazione finanziaria e del fatto che il gravame non appariva d'acchito privo di possibilità di successo (art. 64 cpv. 1 e 2 LTF). Non si prelevano quindi spese giudiziarie a carico del ricorrente e l'avv. Massimo Quadri viene incaricato del suo patrocinio gratuito. A tale titolo, la Cassa del Tribunale federale gli verserà un'indennità il cui ammontare corrisponde alla prassi di questa Corte, tenendo altresì conto dell'importo ottenuto a titolo di ripetibili di questa sede.
10.3. L'opponente non ha minimamente sostanziato la sua eventuale indigenza e non ha presentato una compiuta risposta al ricorso, limitandosi a comunicare di ritenere corretto il giudizio impugnato. La sua domanda di gratuito patrocinio per la procedura dinanzi al Tribunale federale deve quindi essere respinta.

Per questi motivi, il Tribunale federale pronuncia:
1.
Nella misura in cui è ammissibile, il ricorso è parzialmente accolto. I dispositivi n. 2 e 5 della sentenza emanata il 28 maggio 2020 dalla Corte di appello e di revisione penale del Cantone Ticino sono annullati. La causa le è rinviata per un nuovo giudizio nel senso dei considerandi.
2.
Non si prelevano spese giudiziarie.
3.
Lo Stato del Cantone Ticino rifonderà al patrocinatore del ricorrente un'indennità di fr. 1'500.-- a titolo di ripetibili della sede federale.
4.
La domanda di assistenza giudiziaria con gratuito patrocinio del ricorrente per la procedura dinanzi al Tribunale federale è accolta nella misura in cui non è divenuta senza oggetto. Al ricorrente viene designato quale patrocinatore l'avv. Massimo Quadri.
5.
La Cassa del Tribunale federale verserà al patrocinatore del ricorrente un'indennità di fr. 1'500.-- per la procedura dinanzi al Tribunale federale.
6.
La domanda di gratuito patrocinio dell'opponente per la procedura dinanzi al Tribunale federale è respinta.
7.
Comunicazione ai patrocinatori delle parti, al Ministero pubblico e alla Corte di appello e di revisione penale del Cantone Ticino.