Christmas Wine Pairings For the Perfect Festive Dinner

The best wine with turkeyView larger image

Christmas is a time for fun, celebration and a touch of seasonal indulgence. For wine lovers, it’s the chance to try some new wines and invest in a case of your favourites. The anticipation will build until you reach the main event: the sumptuous Christmas dinner.

Pairing wine with your meat is essential if you’re to create the perfect culinary experience, since a carefully chosen wine will create the perfect complement or contrast. If you haven’t paired wine before, or you’re trying a different meat this year, let our recommendations guide you this Christmas.

Pairing the best wine with turkey

Our American cousins traditionally eat turkey at Thanksgiving, but for us Brits, it’s a staple of Christmas day. It’s not for everyone, but we still buy 10 million turkeys each year in the UK, so you’ll probably taste some over the holidays.

This dry, pale meat deserves a pinot noir with moderate tannins, since a light red works well to complement stuffing and herbs. Try the Domain de Valmossine Latour for the sharp berry bouquet.

Turkey also works well with sparkling wines, so if you fancy opening the Prosecco di Valdobbiadene at dinner, go ahead. Alternatively, go with a Chardonnay perhaps something from Burgundy like Bouchard Pouilly Fuisse: it’s the perfect contrast to cut through the roasties and parsnips this year.

Pairing the best wine with goose

Where turkey requires a light red wine, goose demands deep, earthy reds that will balance its rich flavour. Go for the Tyrrell’s Old Winery Pinot Noir, an Australian wine known for its deep berry and jam flavours.

For something a bit different, head to Alsace for either a top quality Gewurtztraminer or Riesling (the acidity is needed to cut through the fattier meat) – This Riesling by Schlumberger will provide a wholly golden taste of Christmas.

Pairing the best wine with beef

Beef is the richest dish of them all, so you’ll need a robust red wine pairing. Opt for the full-bodied Chateau Batailley 5eme Cru Classe, widely considered one of the most affordable wines to have come from the Pauillac region.

If you want to throw a party to remember, the 2001 Chateau Haut Brion could be just what you need. Its cedar wood finish and smoky spices make it a great medium bodied wine.

Gearing up for the big day

At Portland Wine, we believe that there is a perfect pairing for every meal, and a choice to suit every budget. From our independent store, we proudly offer personal service to every one of our clients. We’d love to help you choose the perfect pairings at a price you can afford.

Our team knows every wine we stock, and we’ve hand-picked each one direct from the vineyards we buy for. If you’re struggling to decide which wine will complete your Christmas dinner, don’t hesitate to email us today.

(default) 43 queries took 145 ms
NrQueryErrorAffectedNum. rowsTook (ms)
1SHOW FULL COLUMNS FROM `ck_posts`13134
2SELECT CHARACTER_SET_NAME FROM INFORMATION_SCHEMA.COLLATIONS WHERE COLLATION_NAME= 'utf8_general_ci';110
3SHOW FULL COLUMNS FROM `ck_images`993
4SHOW FULL COLUMNS FROM `ck_post_comments`994
5SHOW FULL COLUMNS FROM `ck_contacts`14144
6SHOW FULL COLUMNS FROM `ck_redirects`554
7SELECT `Redirect`.`id`, `Redirect`.`from`, `Redirect`.`to`, `Redirect`.`count`, `Redirect`.`created` FROM `ck_redirects` AS `Redirect` WHERE `Redirect`.`from` = '/news/christmas-wine-pairings-for-the-perfect-festive-dinner' LIMIT 1000
8SHOW FULL COLUMNS FROM `ck_users`11113
9SELECT `Post`.`id`, `Post`.`title`, `Post`.`slug`, `Post`.`introduction`, `Post`.`body`, `Post`.`image_id`, `Post`.`post_date`, `Post`.`meta_title`, `Post`.`meta_description`, `Post`.`meta_keywords`, `Post`.`status`, `Post`.`created`, `Post`.`modified`, `Image`.`id`, `Image`.`gallery_order`, `Image`.`title`, `Image`.`file`, `Image`.`dir`, `Image`.`mimetype`, `Image`.`filesize`, `Image`.`created`, `Image`.`modified` FROM `ck_posts` AS `Post` LEFT JOIN `ck_images` AS `Image` ON (`Post`.`image_id` = `Image`.`id`) WHERE `Post`.`slug` = 'christmas-wine-pairings-for-the-perfect-festive-dinner' AND `Post`.`status` = 'active' AND `Post`.`post_date` <= '2019-12-14 11:41:27' AND NOT (`Post`.`slug` = '') ORDER BY `Post`.`post_date` DESC, `Post`.`created` DESC LIMIT 1111
10SELECT `Image`.`id`, `Image`.`gallery_order`, `Image`.`title`, `Image`.`file`, `Image`.`dir`, `Image`.`mimetype`, `Image`.`filesize`, `Image`.`created`, `Image`.`modified` FROM `ck_images` AS `Image` WHERE `Image`.`id` = 2665 110
11SELECT `PostComment`.`id`, `PostComment`.`post_id`, `PostComment`.`author_id`, `PostComment`.`user_id`, `PostComment`.`comment`, `PostComment`.`status`, `PostComment`.`ip_address`, `PostComment`.`created`, `PostComment`.`modified` FROM `ck_post_comments` AS `PostComment` WHERE ((`PostComment`.`status` = 'approved') OR (((`PostComment`.`id` IS NULL) AND (`PostComment`.`status` = 'pending')))) AND `PostComment`.`post_id` = (255) 000
12SHOW FULL COLUMNS FROM `ck_baskets`773
13SHOW FULL COLUMNS FROM `ck_store_countries`11114
14SELECT CHARACTER_SET_NAME FROM INFORMATION_SCHEMA.COLLATIONS WHERE COLLATION_NAME= 'latin1_swedish_ci';110
15SHOW FULL COLUMNS FROM `ck_delivery_methods`11114
16SHOW FULL COLUMNS FROM `ck_store_countries_delivery_methods`334
17SHOW FULL COLUMNS FROM `ck_basket_products`884
18SHOW FULL COLUMNS FROM `ck_products`22224
19SHOW FULL COLUMNS FROM `ck_regions`13133
20SHOW FULL COLUMNS FROM `ck_producers`663
21SHOW FULL COLUMNS FROM `ck_styles`10103
22SHOW FULL COLUMNS FROM `ck_bottles`554
23SHOW FULL COLUMNS FROM `ck_product_ratings`994
24SHOW FULL COLUMNS FROM `ck_store_customers`773
25SHOW FULL COLUMNS FROM `ck_store_customer_addresses`20204
26SHOW FULL COLUMNS FROM `ck_grapes`994
27SHOW FULL COLUMNS FROM `ck_grapes_products`334
28SHOW FULL COLUMNS FROM `ck_product_types`773
29SHOW FULL COLUMNS FROM `ck_product_types_products`334
30SHOW FULL COLUMNS FROM `ck_offers`774
31SHOW FULL COLUMNS FROM `ck_offers_products`333
32SELECT `Basket`.`id`, `Basket`.`created`, `Basket`.`modified`, `Basket`.`delivery_method_id`, `Basket`.`delivery_country_id`, `Basket`.`delivery`, `Basket`.`subtotal`, (`Basket`.`delivery` + `Basket`.`subtotal`) AS `Basket__total`, `DeliveryCountry`.`id`, `DeliveryCountry`.`key`, `DeliveryCountry`.`iso`, `DeliveryCountry`.`iso3`, `DeliveryCountry`.`order`, `DeliveryCountry`.`country`, `DeliveryCountry`.`billing`, `DeliveryCountry`.`delivery`, `DeliveryCountry`.`status`, `DeliveryCountry`.`modified`, `DeliveryCountry`.`created`, `DeliveryMethod`.`id`, `DeliveryMethod`.`name`, `DeliveryMethod`.`price`, `DeliveryMethod`.`cap`, `DeliveryMethod`.`threshold`, `DeliveryMethod`.`threshold_price`, `DeliveryMethod`.`status`, `DeliveryMethod`.`modified`, `DeliveryMethod`.`created`, `DeliveryMethod`.`order`, `DeliveryMethod`.`code` FROM `ck_baskets` AS `Basket` LEFT JOIN `ck_store_countries` AS `DeliveryCountry` ON (`Basket`.`delivery_country_id` = `DeliveryCountry`.`id`) LEFT JOIN `ck_delivery_methods` AS `DeliveryMethod` ON (`Basket`.`delivery_method_id` = `DeliveryMethod`.`id`) WHERE `Basket`.`id` IS NULL LIMIT 1000
33SELECT `Region`.`name`, `Region`.`slug`, `Region`.`parent_id`, `Region`.`id`, `Region`.`modified`, `Region`.`created` FROM `ck_regions` AS `Region` WHERE `Region`.`status` = 'active' AND NOT (`Region`.`slug` = '') ORDER BY `Region`.`order` ASC 1211210
34SELECT `Product`.`id`, `Product`.`name`, `Product`.`description`, `Product`.`vintage`, `Product`.`region_id`, `Product`.`producer_id`, `Product`.`style_id`, `Product`.`bottle_id`, `Product`.`image_id`, `Product`.`bid`, `Product`.`best_seller`, `Product`.`created`, `Product`.`modified`, `Product`.`status`, `Product`.`slug`, `Product`.`meta_title`, `Product`.`meta_description`, `Product`.`meta_keywords`, `Product`.`stock`, `Product`.`stock_description`, `Product`.`original_id`, (`Product`.`price`) AS `Product__original_price`, (LEAST(IFNULL((select min(`ck_offers`.`price`) from (ck_offers join ck_offers_products) where ((`ck_offers_products`.`product_id` = `Product`.`id`) and (`ck_offers_products`.`offer_id` = `ck_offers`.`id`) and (`ck_offers`.`start_date` <= now()) and (`ck_offers`.`end_date` >= now()))),`Product`.`price`),`Product`.`price`)) AS `Product__price`, (CONCAT(`Product`.`name`, ' (£', `Product`.`price`,')')) AS `Product__detail_name` FROM `ck_products` AS `Product` WHERE `Product`.`region_id` IN (905, 899, 900, 904, 901, 902, 903, 42, 144, 86, 152, 56, 132, 134, 57, 81, 148, 1, 156, 90, 91, 4, 5, 6, 78, 7, 31, 93, 94, 32, 73, 63, 13, 37, 95, 96, 14, 70, 35, 21, 36, 24, 25, 26, 60, 98, 99, 100, 101, 102, 103, 104, 79, 43, 44, 67, 77, 84, 52, 53, 105, 135, 45, 106, 153, 47, 140, 68, 141, 111, 48, 65, 69, 113, 143, 145, 40, 83, 62, 41, 58, 114, 115, 59, 116, 49, 118, 119, 136, 120, 38, 64, 39, 121, 87, 50, 51, 71, 27, 28, 154, 150, 29, 129, 80, 155, 30, 151, 61, 122, 123, 138, 124, 125, 137, 126, 127, 85, 128, 139, 149) 1026102644
35SELECT `Region`.`id`, `Region`.`name`, `Region`.`parent_id`, `Region`.`lft`, `Region`.`rght`, `Region`.`order`, `Region`.`slug`, `Region`.`meta_title`, `Region`.`meta_description`, `Region`.`meta_keywords`, `Region`.`status`, `Region`.`created`, `Region`.`modified` FROM `ck_regions` AS `Region` WHERE `Region`.`status` = 'active' AND NOT (`Region`.`slug` = '') ORDER BY `Region`.`order` ASC 1211211
36SELECT `Style`.`slug`, `Style`.`name` FROM `ck_styles` AS `Style` WHERE 1 = 1 880
37SHOW FULL COLUMNS FROM `ck_right_banners`774
38SELECT `RightBanner`.`id`, `RightBanner`.`name`, `RightBanner`.`image_id`, `RightBanner`.`url`, `RightBanner`.`status`, `RightBanner`.`created`, `RightBanner`.`modified`, `Image`.`id`, `Image`.`gallery_order`, `Image`.`title`, `Image`.`file`, `Image`.`dir`, `Image`.`mimetype`, `Image`.`filesize`, `Image`.`created`, `Image`.`modified` FROM `ck_right_banners` AS `RightBanner` LEFT JOIN `ck_images` AS `Image` ON (`RightBanner`.`image_id` = `Image`.`id`) WHERE `RightBanner`.`status` = 'active' 440
39SHOW FULL COLUMNS FROM `ck_right_links`664
40SELECT `RightLink`.`id`, `RightLink`.`name`, `RightLink`.`url`, `RightLink`.`status`, `RightLink`.`created`, `RightLink`.`modified` FROM `ck_right_links` AS `RightLink` WHERE `RightLink`.`status` = 'active' 220
41SELECT `Setting`.`id`, `Setting`.`key`, `Setting`.`value`, `Setting`.`modified` FROM `ck_settings` AS `Setting` WHERE `Setting`.`key` = 'meta_keywords' LIMIT 1110
42SELECT `User`.`id`, `User`.`role`, `User`.`contact_id`, `User`.`username`, `User`.`password`, `User`.`status`, `User`.`active`, `User`.`login_count`, `User`.`last_login`, `User`.`created`, `User`.`modified`, `Contact`.`id`, `Contact`.`first_name`, `Contact`.`surname`, `Contact`.`email`, `Contact`.`website`, `Contact`.`address_1`, `Contact`.`address_2`, `Contact`.`city`, `Contact`.`postcode`, `Contact`.`country_code`, `Contact`.`telephone`, `Contact`.`organisation`, `Contact`.`created`, `Contact`.`modified`, (CONCAT(`Contact`.`first_name`,' ',`Contact`.`surname`)) AS `Contact__name` FROM `ck_users` AS `User` LEFT JOIN `ck_contacts` AS `Contact` ON (`User`.`contact_id` = `Contact`.`id`) WHERE `User`.`id` IS NULL LIMIT 1000
43SELECT `Contact`.`id`, `Contact`.`first_name`, `Contact`.`surname`, `Contact`.`email`, `Contact`.`website`, `Contact`.`address_1`, `Contact`.`address_2`, `Contact`.`city`, `Contact`.`postcode`, `Contact`.`country_code`, `Contact`.`telephone`, `Contact`.`organisation`, `Contact`.`created`, `Contact`.`modified`, (CONCAT(`Contact`.`first_name`,' ',`Contact`.`surname`)) AS `Contact__name` FROM `ck_contacts` AS `Contact` WHERE `Contact`.`id` IS NULL LIMIT 1000