Są identyczne.
Z dokumentacji PostgreSQL:
http://www.postgresql.org/docs/8.3/static /datatype-character.html
Tutaj mówią o różnicach między char(n), varchar(n) i tekstem (=varchar(1G)). Oficjalna historia jest taka, że nie ma różnicy między varchar(100) a tekstem (bardzo duży varchar).