Oh, I guess I didn't answer your question completely. To me they sound the same, but I am not a native speaker,... :)
You need to use the 를/을 in the negative case that I already mentioned. You also need it if you use 못.
공부를 못했어요. (notice there is no space between 못 and 했어요.)
And yes, this is the case with other 하다 verbs as well. 노래하다, 수영하다, 등..