O conceito é bem mais profundo que essa explicação, mas resumindo e abstraindo um pouco, pensa assim:
A porta é o identificador de "onde" o seu serviço está esperando receber requisições. Para um servidor HTTP normalmente será na porta 80 ou na porta 443.
O endereço IP identifica qual é o servidor na rede, a porta identifica qual é o serviço naquele servidor (um mesmo servidor pode ter várias portas abertas com serviços diferentes esperando receber requisições em cada uma). As portas são definidas por convenção, mas nada impede que você configure o seu serviço para funcionar em uma porta diferente do padrão (e neste caso apenas quem souber a porta correta vai conseguir enviar requisições para o seu serviço)
Aproveitando a analogia do professor na aula, as portas são os números do apartamento em um prédio, enquanto o endereço IP é o endereço no prédio na cidade (Rua Fulano de Tal nº XY). Se for aprofundar um pouco mais, dá para imaginar que o protocolo (HTTP no caso) é a língua com a qual você vai conversar com o serviço que mora no apartamento para o qual você enviou a sua requisição