Pull in taxonomy links using get_the_terms?

You need to include your html inside the foreach, something like this:

$url = site_url();
foreach ( $terms as $term ) {
    $linklist .= "<h3 id='Proj_Categories'><a href="" . $url . "/projects/" . $term->slug . "">" . $term->name . "</a></h3>\n";
}
echo "<ul>" . $linklist . "</ul>";

(I haven’t checked this code…)

It looks like you were trying to do something with making an array of the links, maybe, joined by pipes as separators? If so, make your array with the the terms, then do another foreach with that array and create the links.

Looks like you were only getting one of the terms because you were calling $term (not sure where that was set, outside of the first loop) rather than looping through the array of terms.