По завещанию Дмитрия Донского, после смерти его сына Василия I престол должен был отойти следующему сыну Юрию. Но за право на княжение развернулась борьба.
Мать Василия, княгиня литовская София Витовтовна, договорилась с Юрием Звенигородским о временном перемирии и заключила в 1428 году с ним договор, по которому 54-летний Юрий признавал себя «молодшим братом» малолетнего племянника. При этом Софья воспользовалась влиянием своего отца князя Витовта, сопротивляться которому Юрий не мог.
Начало правления молодого князя ознаменовали эпидемия чумы и засуха. На протяжении всего правления он отбивал попытки дяди и его сыновей захватить московский престол. Так, в 1430 году, после смерти Витовта и фактического правителя митрополита Фотия, Юрий Дмитриевич поехал в Орду, чтобы его с Василием рассудили. Василий также выехал в Орду со своими боярами. Оба князя предстали перед ханами в 1432 году. Ярлык получил Василий Васильевич не в последнюю очередь благодаря льстивым речам Ивана Всеволожского.
Юрий не оставил попыток взойти на престол, и в 1433 году состоялось сражение на берегу Клязьмы, в котором дядя одержал победу над племянником. Юрий выслал Василия из Москвы, и тот стал князем коломенским. За Василием II последовали многие бояре и князья, которые поддерживали его политику «собирателя земель». Коломна стала центром объединенных сил.
Многие жители покинули Москву, отказавшись служить князю Юрию, и направились в Коломну, которая на некоторое время стала неофициальной столицей Северо-Восточной Руси почти со всем административно-хозяйственным и политическим штатом. Заручившись народной поддержкой, Василий включился в борьбу за власть. В 1434 году, после смерти князя Юрия, Василий снова сел в Москве.
В 1436 году против Василия II пошёл сын Юрия Звенигородского Василий Косой, но он был разбит, взят в плен и ослеплён. В 1445 году Василий под Суздалем потерпал поражение от войск казанских царевичей Махмуда и Якуба — сыновей хана Улу-Мухаммеда. Василий II и его двоюродный брат Михаил Верейский попали в плен. Их выкуп обошёлся московскому княжеству очень дорого — помимо крупной денежной суммы казанским царевичам отдали ряд российских городов.
В 1446 году Василия II в Троице-Сергиевой лавре захватили люди ещё одного сына князя Юрия — Дмитрия Шемяки. От имени Дмитрия Шемяки, а также Иоанна Можайского и Бориса Тверского Василия ослепили, после чего он получил прозвище Тёмный. Его вместе с женой и детьми сослали в Углич, а Софью Витовтовну — в Чухлому.
Василий не хотел отступать и продолжил отстаивать свои права на великое княжение. В 1447 году он пришёл к игумену Ферапонтова монастыря и попросил благословения на поход против овладевшего Москвой Шемяки. Интересно, что во время своего короткого княжения Дмитрий Шемяка стал выпускать монеты с надписью «Господарь всея земли Русской». Он стал первым в истории Москвы великим князем, употребившим такой титул.
Несмотря на то, что большую часть своего правления Василий II провёл в междоусобных распрях, ему удалось собрать почти все мелкие уделы внутри Московского княжества и укрепить великокняжескую власть.