The tags that make a share card
og:title, og:description, og:image and og:url are the core of the Open Graph protocol, used by LinkedIn, Facebook, Slack, Discord and others. og:type is usually website, and og:site_name shows your brand.
X reads the same Open Graph tags but needs twitter:card to choose the layout; summary_large_image shows the big picture most people expect.
Questions
What image size should I use?
1200 by 630 pixels. Use a full https:// URL; many sites ignore relative image paths.
Do I need both og: and twitter: tags?
X falls back to og: tags for title, description and image, so the one twitter: tag you really need is twitter:card.
Why does my live page not show the new card?
Sites cache cards. New shares pick up the change once the site refetches the page.
How do I check the result?
Publish the tags, then paste the page into the social preview checker.