It looks as though your objects are aligned. In that case:
- Set your Snap to 'Active' and 'Vertex'
- Put the dome into Edit Mode, select an accessible rim vertex, and hit A to select the rest. The rim vertex should still be active.
- GZ move the dome down and snap the active vertex to the corresponding one on the ring.
(If the objects are not aligned on the Global Z, create a Custom Orientation from one of the rim faces, and use the Z from that.)
Now you have your object-rims exactly coincident.
Later, you want to join the objects into a single manifold mesh.
- In Object Mode, CtrlJ join the objects.
- Edit Mode, select all vertices,M > By Distance merge the coincident vertices.
This will leave you with a ring of internal faces. You can either:
- In Edit Mode, select none and then Header > Select menu > All By Trait > Interior Faces and X > Delete Faces
- Or do it by hand: H hide a face next to the rim to give you access, Alt - select the internal ring of faces, and again, delete them, before AltH unhiding your hatch.
EDIT in response to comments:
I can't be sure of the source of the mismatch between the dome and the ring, but it might be this:
This is the result of modifier - Solidifying a hemisphere. Note the inner circumference is lower than the outer.. not in the plane of the equator. Solidify is using the average face-normals of the ring to the immediate north, but there is no counterbalancing ring of faces to the south. If you solidify while the sphere is intact, and cut it after applying, this doesn't happen, or you could scale the rim to 0 in Z about one of the outer vertices, after applying the modifier.
In general, for modelling that isn't ultra-precision, I would turn up the merge distance to the minimum that merges the vertices I want to, bearing in mind I can restrict the merge to selected vertices. This is the usual case for me, thinking like a carpenter rather than an engineer, taking the 'measurement' of a length or angle, simply by copying an existing part, risking the propagation of small errors, to get a match.
For precision modelling, (where perhaps you should be in CAD anyway,) I would keep the merge distance to an absolute minimum. Unmerged vertices will then alert me to an error in measurement, somewhere.