Getting back after forwarding to another controller function
I have this working in another plugin calling another function:

$forward = $this-&gt;forward('commerce/products/saveProduct', false);


and it returns to the original controller fine. So, as Brad comments, the forward is actually working as expected but that particular UsersController-&gt;saveUser() function prevents it happening internally.

Within my particular example, I was able to access the original post request and access a userGroupId from the user registration form like so:

    craft()-&gt;on('users.onSaveUser', function (Event $event) {
        if ($event-&gt;params['isNewUser']) {
            if (isset($_POST['userGroup'])) {

                $userGroupId = $_POST['userGroup'];
                $user = $event-&gt;params['user'];

                craft()-&gt;userGroup-&gt;setUserGroup($user, $userGroupId);

            }               
        }
    });