Les 2 sont très semblables dans un contexte basique.
Le plus simple est d'utiliser malloc() en indiquant le nombre d'octets qui sera fonction du nombre d'éléments de ton tableau et de la taille en octets via sizeof() de chaque élément.
Une différence majeure entre malloc() et calloc() est que la seconde initialise automatiquement la zone mémoire allouée avec des 0.