Deprecated: Return type of Requests_Cookie_Jar::offsetExists($key) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /customers/6/d/e/copenhagenfoodie.dk/httpd.www/wp-includes/Requests/Cookie/Jar.php on line 63 Deprecated: Return type of Requests_Cookie_Jar::offsetGet($key) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /customers/6/d/e/copenhagenfoodie.dk/httpd.www/wp-includes/Requests/Cookie/Jar.php on line 73 Deprecated: Return type of Requests_Cookie_Jar::offsetSet($key, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /customers/6/d/e/copenhagenfoodie.dk/httpd.www/wp-includes/Requests/Cookie/Jar.php on line 89 Deprecated: Return type of Requests_Cookie_Jar::offsetUnset($key) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /customers/6/d/e/copenhagenfoodie.dk/httpd.www/wp-includes/Requests/Cookie/Jar.php on line 102 Deprecated: Return type of Requests_Cookie_Jar::getIterator() should either be compatible with IteratorAggregate::getIterator(): Traversable, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /customers/6/d/e/copenhagenfoodie.dk/httpd.www/wp-includes/Requests/Cookie/Jar.php on line 111 Deprecated: Return type of Requests_Utility_CaseInsensitiveDictionary::offsetExists($key) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /customers/6/d/e/copenhagenfoodie.dk/httpd.www/wp-includes/Requests/Utility/CaseInsensitiveDictionary.php on line 40 Deprecated: Return type of Requests_Utility_CaseInsensitiveDictionary::offsetGet($key) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /customers/6/d/e/copenhagenfoodie.dk/httpd.www/wp-includes/Requests/Utility/CaseInsensitiveDictionary.php on line 51 Deprecated: Return type of Requests_Utility_CaseInsensitiveDictionary::offsetSet($key, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /customers/6/d/e/copenhagenfoodie.dk/httpd.www/wp-includes/Requests/Utility/CaseInsensitiveDictionary.php on line 68 Deprecated: Return type of Requests_Utility_CaseInsensitiveDictionary::offsetUnset($key) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /customers/6/d/e/copenhagenfoodie.dk/httpd.www/wp-includes/Requests/Utility/CaseInsensitiveDictionary.php on line 82 Deprecated: Return type of Requests_Utility_CaseInsensitiveDictionary::getIterator() should either be compatible with IteratorAggregate::getIterator(): Traversable, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /customers/6/d/e/copenhagenfoodie.dk/httpd.www/wp-includes/Requests/Utility/CaseInsensitiveDictionary.php on line 91 From Overlooked to Michelin-Starred: Texture’s Decisive First Year - CopenhagenFoodie
Menu
Copenhagen

From Overlooked to Michelin-Starred: Texture’s Decisive First Year

Restaurant Texture in Copenhagen has experienced a first year marked by polar opposites. After just eight months in operation, it was awarded a Michelin star — yet before that, not a single Danish newspaper or magazine had reviewed it. One publication even stated openly that they declined to review the restaurant because they did not believe it would survive.

It did.

And the Michelin star not only brought lots of guests to their restaurant, but also seemed to give the kitchen the confidence to fully commit to its identity.

Head chef Karim was born and raised in the south of France, and his cooking reflects a lived relationship with classic French cuisine rather than a résumé built on French training alone. His affection for buttery sauces, traditional preparations, and unapologetically rich products burns brighter than in many so-called French restaurants, where the chef has merely passed through a French kitchen. At Texture, genuinely French ingredients appear without explanation or apology: frog legs — something I have rarely encountered outside France — blood sausage, and the expected luxury staples of caviar, oysters, and turbot.

The opening snacks set the tone immediately. Truffle, Comté cheese, tuna belly, caviar, and frog leg arrive in quick succession — powerful, assertive flavors that make it clear Karim has no interest in restraint for its own sake. This is cooking with confidence and personality, unconcerned with playing it safe.

The snacks are enjoyed in the lounge just inside the entrance, before guests are guided through a narrow corridor where the Michelin jacket hangs front and center. Beyond it lies the intimate dining room. Shortly after being seated, the first dish is presented tableside: a Gillardeau oyster topped with horseradish snow, prepared with liquid nitrogen.

Liquid nitrogen has felt dated for several years now, and while it made conceptual sense here, I would personally have preferred the dish without the tableside theatrics. That said, the flavor was spot on. The second oyster course — more restrained in appearance — proved even better. Beneath its humble look was a deceptively rich and comforting combination of flavors that lingered far longer than expected.

One of Texture’s signature dishes is the lobster “æbleskive” topped with caviar. I remembered this dish from a previous visit as being slightly dry. This time, it was executed exactly as it should be: soft, delicate, and just slightly runny at the center. From there, the meal moved briefly into a bread interlude — a brioche brushed with duck fat and served with excellent French butter. Indulgent, unnecessary, and completely irresistible.

The bread paired perfectly with the final savory courses, which leaned fully into classic French comfort. First, foie gras with quince, the fruit providing both sweetness and textural contrast. Then Norwegian scallop with truffle and potato purée, followed by a perfectly cooked turbot with beurre blanc. There is nothing novel about these dishes — and that is precisely the point. This was the kitchen at its strongest: stripping classics down to their essence and executing them with clarity and confidence. It does not get more traditional, nor more satisfying, than this.

Dessert opened with a dish I had anticipated since first seeing it on Instagram: a goat cheese sorbet with bergamot, honey, and olive oil. Karim’s fondness for bold flavors was unmistakable here, but in this case the balance faltered. The goat cheese dominated the dish to such an extent that the remaining components felt almost redundant. The final dessert suited me far better — a fried brioche with Jerusalem artichoke and orange blossom water, finished with a subtle note of pine. Sweet and savory in harmony, and far more composed.

Texture is a small restaurant, seating fewer than twenty guests, and the diningroom feels intimate without becoming precious. Wooden panels line the walls, white tablecloths anchor the space, and shifting digital reproductions of French masterpieces by Van Gogh and Monet quietly reinforce the restaurant’s identity. The service team, dressed in suits and ties, completes the picture — another subtle nod to the classical French tradition that the restaurant embraces so naturally.

French cuisine has long conquered the world of fine dining, forming the foundation of countless modern restaurants. What sets Texture apart is that it does not merely borrow from France — it commits to it. The food is genuinely French, confidently executed, and full of personality, even when that confidence occasionally tips into excess.

Turning one year old, Texture fulfills the promise of an authentic one-Michelin-star restaurant — not by chasing trends, but by trusting its roots.

Practical information

Locaton: Copenhagen, Denmark

Head Chef: Karim Khouani

Menu: 8 or 10 course menu 2795kr ($450)

Website: www.texturesrestaurant.com

No Comments

    Leave a Reply

    This site uses Akismet to reduce spam. Learn how your comment data is processed.