I'd recommend the steel flasks by Corkcicle (www.corkcicle.com). They sell them on the grounds that they keep drinks cold for longer, but the reverse is also true - they are really good at keeping things warm: my daughter often takes soup to school for lunch. I heat the flask with boiling water first as the soup heats at around 7.30 in the morning. She has her lunch at 12.30 and tells me she still has to blow on the soup to cool it enough to eat.
John Lewis & other shops sell them, but the other day I saw a load of the larger flasks (perfect for coffee, the smaller ones hold roughly a tin of soup) in TK Maxx at a much lower price.