How can I get all comments for a node?
To answer my own question I guess(better alternatives are more than welcome).

use Drupal\Core\Entity\EntityTypeManagerInterface;

class SomeRepository {

  /**
   * @var \Drupal\Core\Entity\EntityTypeManagerInterface
   */
  protected $entity_type_manager;

  /**
   * ProductRepository constructor.
   *
   * @param \Drupal\Core\Entity\EntityTypeManagerInterface $entity_type_manager
   */
  public function __construct(EntityTypeManagerInterface $entity_type_manager) {
    $this-&gt;entity_type_manager = $entity_type_manager;
  }

  /**
   * @param $node_id
   *
   * @return array|null
   * @throws \Drupal\Component\Plugin\Exception\InvalidPluginDefinitionException
   * @throws \Drupal\Component\Plugin\Exception\PluginNotFoundException
   */
  public function getNodeComments($node_id) {
    try{
      $node = $this-&gt;entity_type_manager
        -&gt;getStorage('node')
        -&gt;load($node_id);
    }catch(\Exception $exception) {
      // log here
      // rethrow error or return, whatever works for you
      return NULL;
    }

    try{
      $comment_ids = $this-&gt;entity_type_manager
        -&gt;getStorage('comment')
        -&gt;getQuery('AND')
        -&gt;condition('entity_id', $node-&gt;id())
        -&gt;condition('entity_type', 'node')
        -&gt;sort('cid', 'DESC')
        -&gt;execute();
    }catch(\Exception $exception) {
      // log here
      // rethrow error or return, whatever works for you
      return NULL;
    }

    if(empty($comment_ids)) {
      return [];
    }

    $comments = $this-&gt;entity_type_manager
      -&gt;getStorage('comment')
      -&gt;loadMultiple($comment_ids);

    $comments_array = [];

    foreach($comments as $comment) {
      // Loop over and get whichever fields you want from the comments
      $comments_array[$comment-&gt;id()] = [
        'cid' =&gt; $comment-&gt;id(),
        'owner_id' =&gt; $comment-&gt;getOwnerId(), // node to which this comment belongs
        'some_field' =&gt; $comment-&gt;get('some_field')-&gt;value
      ];
    }

    return $comments_array;
  }
}