1849年出生在一个俄国海军军官家庭。由于受父亲的影响,从小就向往航海探险和海战生活。1865年以优异成绩从尼古拉耶夫斯克海军学校毕业,步入俄国海军队伍。1877年至1878年间俄土战争中,采用水雷艇袭击土耳其装甲舰队。后又发明炮弹穿甲弹头。1886至1896年间两次环球航行,写下有关航海、造船、水文、地理等著作。1890年晋升海军少将。1894年任海军炮兵总监;制造无烟火药。同年转任地中海舰队司令。翌年晋升海军中将.1898年迁波罗的海舰队司令。设计世界上第一艘破冰船“叶尔马克”号,并于1899年、1901年在北极航行。
1894年的甲午战争,作为东洋第一军港,拥有20余座海陆炮台又苦心经营十年的旅顺,竟然在一夜之间就被日军第二军第一旅团长乃木希典率部攻破了,敢于抵抗的将领只有一个徐邦道,日军为攻城仅伤亡288人。1904年的日俄战争中,旅顺守军换成了俄罗斯人,进攻方依然是日本,指挥官依然是乃木希典。陆战从1904年5月26日一直打到1905年的1月2日,俄罗斯军队在大部分将领昏庸腐败内部不和的情况下,还坚守了222天,日军为攻城而累计投入兵力13万人,伤亡总数达6万余人。
1904年日俄战争的前夜,马卡洛夫的职务是圣彼得堡喀琅施塔得港海军司令。他曾于2月8日致函给沙俄海军部,指日之间战争迫在眉睫,停泊在旅顺港外锚地的俄国舰队处境危险,随时可能遭受到日军袭击,必须马上采取对策,以防万一。然而,沙俄海军部昏庸的官员们因为马卡洛夫常常让他们难堪,所以他们根本没有理睬马卡洛夫的建议。不出他所料,2月9日,日本海军就突然袭击,重创俄国军舰。
开战之初,本来俄太平洋分舰队的整体实力尚占一定优势,但由于指挥官开始狂妄轻敌,指挥失误,后来又胆小怕死,不敢出击,结果在东乡平八郎的打击下,沙俄舰队只得龟缩到狭窄的旅顺港内。二月十七日,太平洋舰队司令斯达尔克由于指挥不力被免职。3月,海军部任命马卡洛夫为太平洋舰队司令。
1904年4月13日,马卡洛夫刚刚上任36天,其所乘的彼得罗巴普洛夫斯克号在旅顺口黄金山外海触雷,并引爆了该舰舰首的弹药库。倾刻间,“彼得罗巴甫洛夫斯克”号被炸沉海底,马卡洛夫当场阵亡。这枚水雷是俄国舰队布下的还是日本联合舰队布下的,至今没有定论,史学界普遍认为是日军夜间偷偷布设的水雷。