Михайло Гурка народився 21 листопада1975 року у Львові. Почав займатися футболом у семирічному віці, коли батько віддав його до школи львівських «Карпат». Першим тренером Гурки був Віктор Михайлович Ходукін. Згодом, після від'їзду Ходукіна до Чехії, молодий гравець потрапив до Ігоря Климентійовича Артемовича[3].
1994 року Михайло Гурка приєднався до складу львівських «Карпат». У вищій лізі зіграти тоді йому не вдалося, він лише просидів кілька ігор на лаві запасних, натомість він зіграв два матчі у Кубку України. 29 березня 1994 року він дебютував у виїзному матчі проти «Волині», а вже 12 квітня він забив свій перший гол, вийшовши на заміну у матчі-відповіді, до того ж цей гол став вирішальним у двоматчевому протистоянні[4]. Паралельно він продовжував виступати в аматорських змаганнях за ФК «ЛАЗ».
У сезоні 1994/95ФК «ЛАЗ» вийшов до перехідної ліги, і Михайло Гурка провів у цій команді майже весь сезон. Улітку 1995 року гравець уклав першу у своєму житті професіональну угоду — однорічний контракт з «Карпатами». Але і цього разу він не зміг потрапити до основи клубу, за рік вийшовши на заміну лише у двох матчах, дебютувавши у вищій лізі 22 вересня1995 року на останній хвилині матчу проти «Чорноморця». Закінчивши сезон кількома матчами за дрогобицьку «Галичину», Гурка продовжив кар'єру в складі ФК «Львів». Там він провів півтора сезону у першій лізі, ставши одним з основних півзахисників команди.
З весни 1998 року виступав за вищолігову полтавську «Ворсклу», одразу потрапивши до основного складу. У червні — липні Михайло Гурка грав за полтавчан у Кубку Інтертото, де забив два м'ячі у ворота ісландського «Лейфтюра». Але з наступного сезону він став рідше потрапляти до основного складу, а в сезоні 1999/2000 взагалі грав лише за другий склад. У зв'язку з цим у січні 2000 року Гурка був виставлений на трансфер[5], але до іншого клубу не перейшов. Протягом 2000 року він так і не зміг пробитися до основного складу, провівши лише 4 гри у «Ворсклі» та 7 ігор у «Ворсклі-2», а також зіграв у Кубку УЄФА, вийшовши на заміну у виїзному матчі проти «Боавішти».
У грудні 2000 року Михайло Гурка втретє у своїй кар'єрі перейшов до львівських «Карпат», які тоді переживали значну фінансову скруту[6]. Проте стабільно потрапляв до основи гравець лише у другому колі сезону 2000/01. Наступні півтора року гравець провів, виступаючи переважно за «Карпати-2», а то і за «Карпати-3». У листопаді 2001 року новий тренерський штаб «Карпат» виставив Гурку на трансфер[7], але у міжсезоння півзахисник залишився у львівському клубі.
У «Карпатах» Гурка виступав до кінця 2002 року, після чого він був відданий в оренду до першолігового «Закарпаття», згодом ужгородський клуб викупив контракт гравця[4]. У «Закарпатті» Гурка провів три з половиною роки сезони і став основним лівим захисником команди. У сезоні 2003/04 «Закарпаття» здобуло путівку до вищої ліги, а Михайло Гурка разом з п'ятнадцятьма іншими гравцями клубу отримав звання «Майстер спорту України», ставши одним з перших гравців в історії ужгородської команди, які здобули це звання під час виступів за клуб[2]. Улітку 2005 року Гурка намагався повернутися до львівських «Карпат», але йому не вдалося досягти порозуміння з керівництвом львів'ян, і Михайло ще на один рік залишився у «Закарпатті»[8]. У «Закарпатті» Гурка був капітаном команди. За півтора сезону у першій лізі та два у вищій він провів 108 матчів та забив 10 голів. На думку гравця, саме в ужгородській команді йому вдалося повністю розкритися як футболісту[3].
Влітку 2006 року «Закарпаття» вилетіло до першої ліги, а Михайло Гурка перейшов до «Оболоні». У першій лізі він зіграв два сезони, у обох «Оболонь» посіла третє місце. Гурка в «Оболоні», як і в «Закарпатті», виконував функції лівого захисника і був капітаном команди[9].
У липні 2008 року на запрошення Віталія Кварцяного Гурка переходить до луцької «Волині». Проте у луцькому клубі футболіст грав лише у першому колі змагань. У другому ж колі Гурка перейшов до чернігівської «Десни», але так і не вийшов у її складі на поле, просидівши 8 матчів на лаві запасних