An electronic device comprising: a housing; a speaker disposed in a first area of the housing; a microphone disposed in a second area of the housing; a display disposed in a third area of the housing; a communication circuit disposed inside the housing or attached to the housing; at least one processor disposed inside the housing and operatively connected to the speaker, the microphone, the display, and the communication circuit; and a memory disposed inside the housing, operatively connected to the at least one processor, and configured to store a plurality of application programs and instructions, wherein the instructions, when executed, cause the at least one processor to: receive a user utterance, including a request to perform a task by using at least one of the application programs, through the microphone, transmit the user utterance to an external server through the communication circuit, receive text data corresponding to the user utterance from the external server through the communication circuit; wherein the text data comprises the utterance converted into text form, identify a first application program of the application programs based on at least part of the text data, establish communication between the first application program and a control program capable of executing the application programs, receive, from the external server through the communication circuit, information associated with a sequence of states in which the electronic device is to perform at least part of the task, compare the first application program and a second application program executable based on the sequence of states, and perform the at least part of the task by executing the first application program or the second application program based on the comparison result, wherein, when the first application program corresponds to the second application program, the instructions further cause the at least one processor to execute the first application program. a housing; a speaker disposed in a first area of the housing; a microphone disposed in a second area of the housing; a display disposed in a third area of the housing; a communication circuit disposed inside the housing or attached to the housing; at least one processor disposed inside the housing and operatively connected to the speaker, the microphone, the display, and the communication circuit; and a memory disposed inside the housing, operatively connected to the at least one processor, and configured to store a plurality of application programs and instructions, wherein the instructions, when executed, cause the at least one processor to: receive a user utterance, including a request to perform a task by using at least one of the application programs, through the microphone, transmit the user utterance to an external server through the communication circuit, receive text data corresponding to the user utterance from the external server through the communication circuit; wherein the text data comprises the utterance converted into text form, identify a first application program of the application programs based on at least part of the text data, establish communication between the first application program and a control program capable of executing the application programs, receive, from the external server through the communication circuit, information associated with a sequence of states in which the electronic device is to perform at least part of the task, compare the first application program and a second application program executable based on the sequence of states, and perform the at least part of the task by executing the first application program or the second application program based on the comparison result, wherein, receive a user utterance, including a request to perform a task by using at least one of the application programs, through the microphone, transmit the user utterance to an external server through the communication circuit, receive text data corresponding to the user utterance from the external server through the communication circuit; wherein the text data comprises the utterance converted into text form, identify a first application program of the application programs based on at least part of the text data, establish communication between the first application program and a control program capable of executing the application programs, receive, from the external server through the communication circuit, information associated with a sequence of states in which the electronic device is to perform at least part of the task, compare the first application program and a second application program executable based on the sequence of states, and perform the at least part of the task by executing the first application program or the second application program based on the comparison result, wherein, when the first application program corresponds to the second application program, the instructions further cause the at least one processor to execute the first application program.