A three-dimensional space-marching algorithm on unstructured grid to solve supersonic flows that may contain embedded subsonic regions is proposed. The method employs a domain-marching algorithm in which a computational domain, named active domain, is marched in the hyperbolic direction starting from the upstream boundary of the flow field. A masking procedure is employed to exclude nonactive areas during the flux computations to minimize overall arithmetic operations. The unmasked, active domain is integrated in time to get a locally converged solution. If embedded subsonic regions are present, the active domain is enlarged to cover the whole subsonic regions by supersonic points. The method was applied to compute three-dimensional internal and external flows with and without embedded subsonic region. It is demonstrated that the computational work can be significantly reduced by the present method as compared to conventional, time-marching unstructured grid methods.