varchar vs text - MySQL

No meu projeto, um usuário pode escrever um comentário [texto sem formatação] e visualizar outros comentários, pode excluir o próprio comentário, mas não pode atualizar o comentári
Neste caso, qual devo usar?

Text ou Varchar (4048) ?
Qual é a vantagem e a desvantagem de Text e Varchar (grandes como 4000) ?
É seguro o suficiente se eu substituir apenas '<' por '& lt;' e '>' com '& gt;' para garantir que está tudo bem ?
[não quero converter todos como '"& ..., para economizar espaço, só quero garantir que o usuário não possa escrever javascript]

Haverá um limite no front-end

questionAnswers(4)

yourAnswerToTheQuestion