Контекстуально разная. В некоторых контекстах это одно и то же. В других - разное, причём по-разному. Например, в контексте современного официального отношения к военным конфликтам в РФ, "воин" - это обращение, подчёркивающее доблесть, добровольность и искренность сражающихся. Солдат - более приземлённое, бытовое, даже казарменно-бюрократическое.