How do i create an item list where the item has a mixture of links and text
A simpler method is to use the t() function:

$basic_items[] = \Drupal::l('Basic example', Url::fromRoute('flot_examples.basic_usage'));
$string = '&lt;a href=":options_page"&gt;Setting various options&lt;/a&gt; and &lt;a href=":annotating_page"&gt;annotating a chart&lt;/a&gt;';
$options = [
  ':options_page' =&gt; Url::fromRoute('flot_examples.basic_options')-&gt;toString(),
  ':annotating_page' =&gt; Url::fromRoute('flot_examples.annotating')-&gt;toString(),
];
$basic_items[] = t($string, $options);

$output['basic'] = [
  '#title' =&gt; 'Basic Usage',
  '#theme' =&gt; 'item_list',
  '#items' =&gt; $basic_items
];