Take context-free grammars for and rename their nonterminals so that they are disjoint. If their start symbols are , add a new start symbol and the production
All productions remain context-free. A derivation from produces a word from followed by a word from , and every such concatenation has a derivation. Thus the new grammar generates , proving closure of context-free languages under concatenation.