Первый вариант рабочий точно, делал так на своих проектах, видимо у вас где-то ошибка. Как указан $arList и те ли указаны IBLOCK_ID? Без указания IBLOCK_ID в фильтре тоже работает, как сказал выше Сергей.
Перепроверил на своём проекте на примере ниже, работает и выводит элементы из нескольких инфоблоков.
$arSelect = array(
"ID",
"NAME",
"IBLOCK_ID",
"IBLOCK_CODE",
"CODE",
"PROPERTY_PHOTO"
);
$arFilter = array(
"ID" => array(123,1234,2345),
"IBLOCK_ID" => array(1,2,3),
);
$rsElement = CIBlockElement::GetList(array("NAME" => "ASC"), $arFilter, false, array(), $arSelect);
while($arElement = $rsElement->Fetch())
{
echo "<pre>";
print_r($arElement);
}