Having been commissioned lieutenant on 7 September 1759 M’Douall had to wait another twenty-one years before he was eventually promoted commander on 23 March 1780. In November he joined the sloop Shark 16 at Spithead where he remained until sailing in March 1781 with Commodore George Johnstone’s expedition to the Cape. At Porto Praya, and before Johnstone’s battle with Commodore Suffren on 16 April, M’Douall was detached with an East India Company packet, but then separated from her to reach Rio de Janeiro during early May. In attempting to rejoin Johnstone’s squadron at the Cape M’Douall found it occupied by the French instead, and only with difficulty did the Shark escape after a four hour running battle with the Serapis 44 – this being the vessel that the American privateer John Paul Jones had captured off Flamborough Head on 23 September 1779, and which had been handed over to the French.
After finally reuniting with Johnstone M’Douall was posted captain with seniority from 24 July 1781, but although appointed to the Romney 50 he was not commanding her when she returned to England with a convoy from St. Helena in February 1782. Instead he arrived home to commission the Africa 64 at the beginning of 1782, and he sailed for the East Indies with Commodore Sir Richard Bickerton’s squadron in June. After fighting at the Battle of Cuddalore on 20 June 1783, where his ship lost five men killed and twenty-five wounded, M’Douall returned to England in the following spring and the Africa was paid off in May.
For the duration of the peace, and for some years into the French Revolutionary War, M’Douall remained unemployed. Upon returning to duty he commanded the Scipio 64 from February 1795, briefly joining the Channel fleet and then sailing for the Leeward Islands during August. In the spring of 1796 he transferred on that station to the Ganges 74, and he was present with her at the capture of St. Lucia during the Leeward Islands campaign of April-June.
By February 1797 the Ganges was back at Portsmouth with the Channel fleet, although she was soon forced into Plymouth for repairs. Following the mutiny in the North Sea fleet which broke out on 27 May the Ganges was sent to reinforce Admiral Adam Duncan, but once those mutinous ships rejoined the fleet she returned to port and was thus not present at the Battle of Camperdown in October.
M’Douall continued to command the Ganges throughout 1798-99, and he was the senior officer at Great Yarmouth with a commodore’s broad pennant. He also occasionally commanded the North Sea fleet off the Texel in the absence of Admiral Lord Duncan and Vice-Admiral Sir Richard Onslow. The Ganges eventually arrived at Portsmouth to be paid off in October 1799, whereupon M’Douall retired ashore.
He became a rear-admiral on 1 January 1801, a vice-admiral on 9 November 1805 and an admiral on 4 December 1813.
M’Douall died on 16 February 1816 at Stranraer in Scotland.