Sul nome ci sono due spiegazioni opposte: dal latino sol opacus, cioè paese poco soleggiato, oppure da sub pago, il villaggio che sta sotto — sotto il massiccio del Taburno. Il centro abitato ha una forma stretta e lunga, un chilometro e mezzo disteso ai piedi della montagna, con il Calore a fare da confine a nord. Le prime citazioni sono di poco prima del Duecento: nel 1198 il registro dei defunti di una confraternita di Benevento annota la morte di «Petrus marandu de Casali Sancti Johannis de Surrepaca», e un altro nel 1208. Gli storici ritengono che Solopaca sia nata come casale di Telesia dopo che le incursioni saracene e il terremoto di metà nono secolo avevano devastato quella città; a sostegno ci sono gli Statuti di Telese, scritti fra il 1197 e il 1250 dal notaio Antonello di Cerreto Sannita, che elencano i casali dipendenti e fra questi «Sorropache». Quando poi il terremoto del 1349 aprì mofete ed esalazioni sulfuree e Telese si spopolò per davvero, i suoi profughi vennero qui: uno dei rioni del paese si chiama ancora Telesini, e nella chiesa di San Mauro c'è un'antica scultura del santo che quei profughi si erano portati dietro.
Nel 1268 Carlo I d'Angiò diede Solopaca e Telese a Guglielmo Belmonte, grande ammiraglio del regno. Dal 1487 il paese fu dei Lagonessa e dal 1574 dei Ceva Grimaldi, che lo governarono per due secoli con il terrore: perquisizioni e carcerazioni arbitrarie, magistrati comunali corrotti, torture e pene corporali. Nel 1662 il duca Antonio Ceva Grimaldi perse il suo anello di smeraldo e mise in allarme la cittadina; un mercante di passaggio, Pompeo Petrucci, lo trovò e glielo riportò, e il duca invece di ringraziarlo ordinò che gli si dessero «mille mazzate a carne ignuda». Nel 1727 una donna, dopo torture disumane delle guardie ducali, fu costretta a dichiararsi colpevole di un reato con cui non aveva nulla a che fare. Il terremoto del 5 giugno 1688 fece intanto ingenti danni. Ultimi feudatari furono i di Sangro, fino all'abolizione della feudalità nel 1806; nel 1835 il re Ferdinando II venne di persona a inaugurare il ponte Maria Cristina. Fino al 1934, infine, il territorio comunale era molto più esteso e comprendeva anche Telese Terme.