Kocić was born in Yugoslavia prior to the country's breakup. He began playing soccer in the Serbian League East, and was part of the youth system of his home town team Dubočica Leskovac before coming to the United States in 2005.
He played college soccer at St. John's University and at Loyola College in Maryland alongside compatriot Rade Koković. Kocić red-shirted during his first year in the US at St. John's before transferring to Loyola. At Loyola, he struggled at first – in 2006, he was the second goalkeeper and only found time in two matches the entire season. However, he made great strides the next two years and in 2008 (his final season at Loyola) he was named First Team All-MAAC as well as being named to the All-North Atlantic Regional Team and the All-American second team. He was named to the Metro Atlantic Athletic Conference 40th Anniversary Men’s Soccer Team on September 1, 2020.[2]
Kocić made his professional debut for DC on April 22, 2009, in the Lamar Hunt U.S. Open Cup against FC Dallas.[5] He made his MLS debut the following week, on May 2, 2009, also against FC Dallas.[6]
Following the 2009 season, Kocić was released by United and was initially without a team after a failed trial with Toronto FC until a second trial period, after which the club ended up signing him for the 2010 season.[7] He made his debut for Toronto in the Canadian Championship against the Vancouver Whitecaps June 2, 2010.
Kocić made his CONCACAF Champions League debut with Toronto FC on August 24, 2010 against Árabe Unido of Panama. More than a month later he made his debut in the league for Toronto on October 16, 2010 versus Columbus Crew in a 2–2 home draw after teammate Jon Conway was shown a red card in the 72nd minute. A week later Kocić made his first start in the league for Toronto in the last game of the year versus his old club D.C. United on October 23, 2010.
Kocić made his 2011 season debut on July 27 under Aron Winter in a 2–1 home victory over Real Esteli during Champions League play.[10] A few weeks later on August 13 Miloš played in his first league match of the season with Stefan Frei sustaining a minor injury in practice that week, the game against Real Salt Lake ended in a 1–0 home victory.[11] During that game Kocić made an impressive save in the 90th minute of play from a Will Johnson volley that later earned Miloš MLS Save of the Week Honours.[12]
At the start of the 2012 season there was much doubt over who the starting keeper would be, after Frei started the first game against Los Angeles Galaxy in the first leg of the Champions League quarter finals. Kocić started in the return leg with a stand out performance, a week later Frei sustained a broken fibula during training requiring surgery expected to keep him out for six months.[13][14] On March 31, 2012 in a league encounter against Columbus Crew, Kocić saved a penalty kick taken by Milovan Mirošević.[15] The save was nominated for Save of the Week.[16]
Kocić, along with Ryan Johnson, was traded to the Portland Timbers on December 12, 2012 for the third overall selection in the 2013 MLS SuperDraft, Joe Bendik and allocation money. "With the addition of Miloš, we felt it was important to add another experienced goalkeeper to strengthen our depth in that position," said Timbers technical director Gavin Wilkinson.[17] In 2014, he signed a three-year contract with Győri ETO FC in the Nemzeti Bajnokság I.[18]
On January 25, 2014, Kocić announced through his Twitter feed that he had started a goalkeeping academy in Toronto and had retired from soccer for family reasons.[19][20][21][22] In 2019, he returned to play in the Canadian Soccer League with the Serbian White Eagles.[23] He re-signed with the White Eagles for the 2021 season.[24]