Improving the reliability of power distribution systems is critically important for both utilities and customers. This calls for an efficient service restoration module within a distribution management system to support the implementation of self-healing smart grid networks. Although the emerging smart grid technologies, including distributed generators (DGs) and remote-controlled switches, enhance the self-healing capability and allow faster recovery, they still pose additional complexity to the service restoration problem, especially under cold load pickup (CLPU) conditions. Herein, a novel two-stage restoration framework is proposed to generate a restoration solutions with a sequence of control actions. The first stage generates a restoration plan that supports both the traditional service restoration using feeder reconfiguration and the grid-forming DGassisted intentional islanding methods. The second stage generates an optimal sequence of switching operations to bring the outaged system quickly to the final restored configuration. The problem is formulated as a mixed-integer linear program that incorporates system connectivity, operating constraints, and the CLPU models. It is demonstrated that on using a multi-feeder test case, the proposed framework is effective in utilizing all available resources to quickly restore the service and generate an optimal sequence of switching actions to be used by the operator to reach the desired optimal configuration.This is an open access article under the terms of the Creative Commons Attribution-NonCommercial-NoDerivs License, which permits use and distribution in any medium, provided the original work is properly cited, the use is non-commercial and no modifications or adaptations are made.