if you want two join meshes together without separation gaps between them like pipe joints see How to use the Boolean and Boolean modifier in blender
if you want to join two separate meshes or objects in blender you can select both objects which should be of the same object type meaning you can join a mesh to a curve or a nurbs object, its mesh to mesh or curve to curve.
so if you have two separate meshes you can select both and use the shortcut Ctrl + J to make them a single object like in the example below
as you can see because i have random color shading turned on and each of the objects is its own object they are given a random but different color
if you select both objects and right click you will get the object context menu you can join the two with the join option to make them the same mesh object
now that we have joined the objects blender sees the two meshes as a single object and gives them the same random shade, they now share one object origin, one edit mode or object mode and object data.
before you join the meshes both have individual origins but on join the active object’s origin becomes the origin for the final mesh, the active object is the last selected object or the object whose selection outline is lighter