diff --git a/core/modules/comment/src/CommentForm.php b/core/modules/comment/src/CommentForm.php
index 1b2d8f02201df0131d12a8a2587680032054c034..cf94909240df0b4954b0fab2bf200c3fe2a91d37 100644
--- a/core/modules/comment/src/CommentForm.php
+++ b/core/modules/comment/src/CommentForm.php
@@ -16,6 +16,7 @@
 use Drupal\Core\Link;
 use Drupal\Core\Render\RendererInterface;
 use Drupal\Core\Session\AccountInterface;
+use Drupal\Core\StringTranslation\TranslatableMarkup;
 use Drupal\Core\Url;
 use Symfony\Component\DependencyInjection\ContainerInterface;
 
@@ -379,6 +380,7 @@ public function preview(array &$form, FormStateInterface $form_state) {
   public function save(array $form, FormStateInterface $form_state) {
     $comment = $this->entity;
     $entity = $comment->getCommentedEntity();
+    $is_new = $this->entity->isNew();
     $field_name = $comment->getFieldName();
     $uri = $entity->toUrl();
     $logger = $this->logger('comment');
@@ -392,16 +394,8 @@ public function save(array $form, FormStateInterface $form_state) {
         '%subject' => $comment->getSubject(),
         'link' => Link::fromTextAndUrl(t('View'), $comment->toUrl()->setOption('fragment', 'comment-' . $comment->id()))->toString(),
       ]);
-
-      // Explain the approval queue if necessary.
-      if (!$comment->isPublished()) {
-        if (!$this->currentUser->hasPermission('administer comments')) {
-          $this->messenger()->addStatus($this->t('Your comment has been queued for review by site administrators and will be published after approval.'));
-        }
-      }
-      else {
-        $this->messenger()->addStatus($this->t('Your comment has been posted.'));
-      }
+      // Add an appropriate message upon submitting the comment form.
+      $this->messenger()->addStatus($this->getStatusMessage($comment, $is_new));
       $query = [];
       // Find the current display page for this comment.
       $field_definition = $this->entityFieldManager->getFieldDefinitions($entity->getEntityTypeId(), $entity->bundle())[$field_name];
@@ -421,4 +415,28 @@ public function save(array $form, FormStateInterface $form_state) {
     $form_state->setRedirectUrl($uri);
   }
 
+  /**
+   * Gets an appropriate status message when a comment is saved.
+   *
+   * @param \Drupal\comment\CommentInterface $comment
+   *   The comment being saved.
+   * @param bool $is_new
+   *   TRUE if a new comment is created. $comment->isNew() cannot be used here
+   *   because the comment has already been saved by the time the message is
+   *   rendered.
+   *
+   * @return \Drupal\Core\StringTranslation\TranslatableMarkup
+   *   A translatable string containing the appropriate status message.
+   */
+  protected function getStatusMessage(CommentInterface $comment, bool $is_new): TranslatableMarkup {
+    if (!$comment->isPublished() && !$this->currentUser->hasPermission('administer comments')) {
+      return $this->t('Your comment has been queued for review by site administrators and will be published after approval.');
+    }
+    // Check whether the comment is new or not.
+    if ($is_new) {
+      return $this->t('Your comment has been posted.');
+    }
+    return $this->t('Your comment has been updated.');
+  }
+
 }
diff --git a/core/modules/comment/tests/src/Functional/CommentPreviewTest.php b/core/modules/comment/tests/src/Functional/CommentPreviewTest.php
index 287b7710bc47307760b8a6bb74be80b8083ca4ff..6175e382ebc2b6d178757a2487aa3d9a77ed264e 100644
--- a/core/modules/comment/tests/src/Functional/CommentPreviewTest.php
+++ b/core/modules/comment/tests/src/Functional/CommentPreviewTest.php
@@ -178,7 +178,7 @@ public function testCommentEditPreviewSave() {
     // Check that saving a comment produces a success message.
     $this->drupalGet('comment/' . $comment->id() . '/edit');
     $this->submitForm($edit, 'Save');
-    $this->assertSession()->pageTextContains('Your comment has been posted.');
+    $this->assertSession()->pageTextContains('Your comment has been updated.');
 
     // Check that the comment fields are correct after loading the saved comment.
     $this->drupalGet('comment/' . $comment->id() . '/edit');