Proper insoles. I used to think insoles should be squishy and fluffy until I had a good set. I uses to get blisters on anything longer than 10 km but now my feet can go forever.
Yes. The sole of my boots provides the cushion I need, while the insoles make it firm and slick inside my boots and shoes. Rubbery insoles grip my sock and the sock rubs on my foot, causing the blisters. The slick insoles allow the socks to stay on my feet in the same spot so no more friction.
You can probably buy them in most shoe shops or places you can buy boots. I use SuperFeet brand, which I think you can buy online. Pair it with some nice socks. For my running shoes, I use some fruit of the loom polyester ankle socks. For my boots I wear some Darn Tough socks when I know it's gonna be a shitty day, else I just wear some regular cheap socks.