. é o caminho do diretório atual.
Cada diretório sempre tem dois arquivos especiais, . e .. , onde primeiro representa a si mesmo, enquanto o segundo representa o diretório pai.
Ao escrever ./manage.py runserver , você está executando o comando manage.py com o argumento runserver . Para ver o que acontece quando você executa manage.py , verifique qual é o conteúdo do arquivo com less manage.py .
Para resumir, não deve haver nenhuma diferença em ambos os casos, a menos que a versão do python indicada no manage.py seja diferente da versão padrão do python. O python usado em manage.py pode ser visto na primeira linha.