What is the best practice for writing a link to the screen through t()?
For a link enclosed in translatable text, Drupal core suggests to use t() and embed the HTML anchor tag directly in the translated string. In LinkGeneratorInterface::generate(), the example code for this case is the following.

$text = t('Visit the &lt;a href=":url"&gt;content types&lt;/a&gt; page', array(
  ':url' =&gt; Url::fromRoute('entity.node_type.collection')-&gt;toString(),
));


Searching for :url in the Drupal core code finds code like the following.

BlockContentController::add()

if (count($types) === 0) {
  return [
    '#markup' =&gt; $this
      -&gt;t('You have not created any block types yet. Go to the &lt;a href=":url"&gt;block type creation page&lt;/a&gt; to add a new block type.', [
      ':url' =&gt; Url::fromRoute('block_content.type_add')-&gt;toString(),
    ]),
  ];
}


ListingEmpty::render()

  $element = [
    '#markup' =&gt; $this-&gt;t('Add a &lt;a href=":url"&gt;custom block&lt;/a&gt;.', [
      ':url' =&gt; Url::fromRoute('block_content.add_page')-&gt;toString(),
    ]),
    '#access' =&gt; $access_result-&gt;isAllowed(),
    '#cache' =&gt; [
      'contexts' =&gt; $access_result-&gt;getCacheContexts(),
      'tags' =&gt; $access_result-&gt;getCacheTags(),
      'max-age' =&gt; $access_result-&gt;getCacheMaxAge(),
    ],
  ];


Alternatively, Drupal core uses the following code.

block_help()

$themes = \Drupal::service('theme_handler')-&gt;listInfo();
$output = '&lt;p&gt;' . t('Block placement is specific to each theme on your site. Changes will not be saved until you click &lt;em&gt;Save blocks&lt;/em&gt; at the bottom of the page.') . '&lt;/p&gt;';
$output .= '&lt;p&gt;' . Link::fromTextAndUrl(t('Demonstrate block regions (@theme)', [
  '@theme' =&gt; $themes[$demo_theme]-&gt;info['name'],
]), Url::fromRoute('block.admin_demo', ['theme' =&gt; $demo_theme]))-&gt;toString() . '&lt;/p&gt;';


template_preprocess_forums()

    if ($variables['tid'] != $topic-&gt;forum_tid) {
      $variables['topics'][$id]-&gt;moved = TRUE;
      $variables['topics'][$id]-&gt;title = $topic-&gt;getTitle();
      $variables['topics'][$id]-&gt;message = Link::fromTextAndUrl(t('This topic has been moved'), Url::fromRoute('forum.page', ['taxonomy_term' =&gt; $topic-&gt;forum_tid]))-&gt;toString();
    }