Croatia’s stylish capital gives its equally coffee-crazy central European counterparts Vienna and Budapest a run for their money. Zagreb’s cobbled streets are meant for leisurely ambles past a dizzying number of cafés and restaurants and some extremely underrated museums.Come December, the capital is taken over by Christmas markets that transform this already beautiful city into something magical. Minutes from the station, Canopy by Hilton puts on a playful version of industrial chic in its lively lounge and restaurant – vivid decor with brick walls and exposed pipes. Its spacious rooms have espresso machines, kettles and irons. The breakfast buffet is huge and you can borrow a bike for free.Jägerhorn Hotel – Built in 1827, Zagreb’s oldest hotel is in an excellent spot by the toy-town-like funicular. Its 18 rooms have an old world look that suits the Habsburg atmosphere. Enjoy a generous breakfast buffet in the flower-filled garden of Café Jägerhorn. From here, a little-known path zigzags to the upper town. B&B doubles from £70 Lobagola B&B – The relaxed atmosphere in this nine-room B&B is helped by a terrace with hammocks and sunloungers. Its light-filled rooms feature pared-down decor. Free coffee, tea and snacks can be had in the communal area and kitchen, where breakfast is served, and the owner offers tours including cycling and truffle hunts. B&B doubles from £65Boutique B&B Casablanca – Two friendly sisters run this ten-room B&B in the eastern side of the lower town. While the bright rooms are simply furnished, the communal areas stand out, namely the cosy garden and breakfast conservatory. There’s a sauna and bikes to rent. B&B doubles from £44 (casablancazagreb.com). Otto & Frank – A highlight of the upper town’s café-filled Tkalciceva street is this cheerful bistro. Sit on the terrace and try a daily special, which could include pork belly with creamy mash and fried Brussels sprouts (£8). Or go for a creative burger of taleggio (cheese) and chutney (£6.20) and a pint of Croatian craft beer (£2.70, otto-frank.com).Mali Bar – Middle Eastern, Mediterranean and Slavic flavours mingle in this well-named restaurant (‘mali’ meaning small). The menu changes but usually includes a creamy chicken liver and foie gras pâté served with labneh (Lebanese yoghurt, £6) as a starter. Follow it with the butternut squash orzotto with a sea bream tartar (£10.20). Address: Vlaska 63.Bring a big appetite for the huge portions at tiny Vjestica in the upper town behind Strossmayer Parade. A platter of Croatian smoked meats and cheeses can be shared (£5.80), especially if followed by a hefty pork and vegetable stewIn a pedestrianised street off the main Ban Jelacic Square, Rougemarin City offers seasonal dishes with a dash of Asia and the Med. The goat’s cheese mousse with roasted beetroot and caramelised walnuts (£5.70) whets the appetite for a meat-heavy risotto with lightly toasted grana padano cheese (£9.90, rougemarin.hr).From Zagreb’s main square, Ban Jelacic, follow the row of red para- sols that lead to the city’s largest farmers’ market, Dolac, open daily till about 2pm.Dozens of outdoor stalls offer seasonal produce from around Croatia, with more inside the indoor market and adjacent fish market.Back in Ban Jelacic, look out for the square’s tallest building on the south-eastern corner: the skyscraper is home to Zagreb 360, a 16th-floor observation deck with panoramic viewsOne of the world’s smallest funiculars – all of 217ft – has been shuttling up to Zagreb’s old town since the late 19th century. It’s too cute to resist, especially at only 50p a go.At the top, you’ll see Lotrscak Tower, a fortification dating from the 13th century that lets off a bone-shaking cannon blast every day at noon. Climb to the top of the tower for sweeping cityscape views (£2.30).After a stroll along the pretty cliff-top promenade of Strossmayer Parade, head into St Mark’s Square and gaze at the remarkable mosaic-tiled roof of Zagreb’s emblematic church of St Mark.The award-winning Museum of Broken Relationships (£4.70, brokenships.com) in the upper town shows how the most banal objects can pack an emotional punch when they symbolise lost loves. For light relief, head around the corner to the Zagreb 80s Museum (£4.70, zagreb80.com) and get a fantastically kitsch taste of Yugoslav life as it was back then.Hop on the tram to see Zagreb’s oldest park, Maksimir, a sprawling landscaped forest that includes the zoo (£3.50, zoo.hr). In the centre of the lower town, wander through the three connected parks, known as Lenuci’s Horseshoe, past elegant 19th-century buildings.It’s here that three of the largest Christmas markets take over the space with food stalls, music stages and a serpentine ice-skating rink.You don’t have to be familiar with Croatian art to enjoy Zagreb’s broad range of galleries. Compelling works from the 19th and 20th centuries are displayed in the Modern Gallery beside Strossmayer Park (£4.70, moderna-galerija.hr) in the lower town.In the upper town, combine a visit to the home of Croatia’s most famous sculptor, Ivan Mestrovic, Atelijer Mestrovic (£3.50, mestrovic.hr), with a look at the small but exquisite collection at the Croatian Museum of Naive Art (£2.90, hmnu.hr).The history of the city is told in engrossing detail at the Zagreb City Museum housed in a 17th-century convent.