(Added the "dual" tick in the LHS of the last line in Mrc Plm's good answer.) For someone who hadn't thought in these terms before, it is probably worth noting, further to Mrc Plm's, that the duals to projective limits $B={\rm projlim}_j B_j$ are not determined purely categorically, but must be "computed" a little, by proving that any TVS hom of such a projective limit to a *normed* space (such as scalars) must factor through a limitand.

In contrast, that the dual of a colimit is the corresponding limit of duals *is* formal.

Edited: Also, as in Mrc Plm's answer, indeed $C^\infty(X)=\lim_k C^k(X)$ is complete-metrizable. Metrizability of the dual is subtler. One should know that the dual of $C^o(X)$ is compactly-supported measures, etc. (Also, whether or not a topology is metrizable, *completeness* is often the salient issue.)

Edit-edit: as in Deane Yang's comments, and Mrc Plm's follow-up comments, on a general smooth manifold there are usually no canonical global "derivatives", so, as in Mrc Plm's comment, one can/should take a smooth partition of unity subordinate to a locally finite cover $U_\alpha$ by coordinate charts. The colimit is then over finite unions of the patches, as before.

However, one may (depending on taste) object that this is "too" dependent on choice of the cover and partition of unity, and/or that we have somewhat obscured the *characterization* of (the topology on) $C^\infty_o(M)$. Agreed, this can seem fussy, but the independence of the topology on choices would come up at some point, and either a direct comparison of change-of-cover-and-partition ought to be done in advance, or a *characterization* given for which the explicit details following a choice of cover ... are a *construction*.

A colimit over locally finite covers by coordinate charts *with* choice of smooth partition of unity, and then following the prescription given by Mrc Plm in comments, succeeds in proving/arranging independence of such choices. (This might have been the substance of Deane Yang's allusion...) That is, given two locally finite covers by coordinate charts, and smooth partitions of unity corresponding, the "sup" (in the ordering in the colimit) consists of pairwise intersections, and pairwise products of the functions in the smooth partition of unity.

Perhaps some feedback from the questioner would be helpful in seeing how much, or what, anyone should say further. I can't resist saying that the *purpose* (if not complete characterization) of the topology on test functions is to produce a *quasi-complete* TVS, so we can reliably take limits without supports "leaking out", and without losing smoothness. The smoothness is completely local (so partition-of-unity stuff succeeds), and/but it is the support condition that necessitates the colimit.