Nikolai Morilow debütierte international im Dezember 2003 im Continental-Cup. Bei den Juniorenweltmeisterschaften 2004 in Stryn gewann er Bronze über 10 Kilometer und mit der Staffel und wurde im Sprint Zehnter. Im Dezember 2004 wurde Morilow in Bern erstmals im Weltcup eingesetzt. Der Sprintspezialist wurde 36. im Sprint und Zwölfter im Teamsprint. Bei den Junioren-Weltmeisterschaften 2005 im finnischen Rovaniemi wurde er Sechster im Sprint und 31. im Verfolgungsrennen über 2 × 10 Kilometer. In der Folgezeit pendelte der Russe zwischen Weltcup, FIS-Rennen und Continental-Cup. Bei den Junioren-Weltmeisterschaften 2006 im slowenischen Kranj wurde er Achter im Sprint, Zehnter über zehn Kilometer im klassischen Stil und Zwölfter in der Verfolgung über 2 × 10 Kilometer.
Zu Beginn der folgenden Saison holte er in Düsseldorf im Teamsprint zusammen mit Alexei Petuchow seinen ersten Weltcupsieg. Im Januar 2010 gewann er in Rybinsk den Teamsprint und das Sprintrennen. Bei den Olympischen Winterspielen 2010 in Vancouver errang er den 26. Platz im Sprint. Zusammen mit Petuchow gewann er die Bronzemedaille im Teamsprint. Die Saison beendete er auf dem achten Rang in der Sprintwertung. Bei den Nordischen Skiweltmeisterschaften 2011 in Oslo kam er auf den achten Rang im Sprint. Seine beste Weltcupsaison lief er 2011/12. Er erreichte bei acht von zehn teilgenommenen Sprintrennen Platzierungen unter den ersten Zehn. Dabei holte er zwei zweite Plätze bei Rennen in Rogla und Szklarska Poręba. Mitte Januar 2012 gewann er in Mailand zusammen mit Alexei Petuchow den Teamsprint. Bei der Tour de Ski 2011/12 siegte er bei der Sprintetappe in Toblach. Die Saison beendete er auf dem 15. Platz in der Weltcupgesamtwertung und auf dem zweiten Rang in der Sprintwertung. Im Januar 2013 holte er in Liberec zusammen mit Michail Dewjatjarow im Teamsprint sein bisher letzten Weltcupsieg. Im folgenden Monat holte er im Sprint in Moskau seinen ersten Sieg im Eastern-Europe-Cup. In der Saison 2015/16 belegte er den 13. Platz in der Gesamtwertung des Eastern-Europe-Cups. Dabei siegte er im Februar 2016 im Sprint in Moskau.