You can normally book free tickets for Sky Garden up to 3 months in advance, but if your friends are coming last minute, Sky Garden's views and archtecturally cool indoor garden are not to be missed. Just show up to the lobby after 9pm, and they'll let you check the bar (and the garden out). The only thing is that you won't be able to go outside to the outdoor deck, but you'll still get 80% of the experience. You can also book a table at the bar if you want the guarantee that you'll get in.
I also think it's much better to pay for a drink here (or not, you're not obligated to buy anything) rather than pay for expensive admission at the Shard.